JS实现的样式切换功能tableCSS实例

本文实例分析了JS实现的样式切换功能tableCSS。分享给大家供大家参考,具体如下:

把前阵子写的JQ插件函数(alterBgColor )改写成不基于JQ的代码,还添加一个click样式效果

代码风格还是按照JQ插件风格来写,使用了闭包来循环设置TR元素的样式

rush:js;"> function TableCss(options){ //如果没参数,就退出 if(arguments.length < 1 || !document.getElementById(options.tableName) ) { return ;} //参数及认参数 var options = { tableName : options.tableName,evenClass : options.evenClass || "tr_even",oddClass : options.oddClass || "tr_odd",clickClass : options.clickClass || "tr_click",hoverClass: options.hoverClass || "tr_hover" } //根据ID找到表格元素 var tableName = document.getElementById(options.tableName); var tr = tableName.getElementsByTagName("tr"); //对TR元素循环设置 for(var i=0,len=tr.length; iSEOver = function(){ if(tr[k].className == options.clickClass ){ return false;} else { tr[k].className = options.hoverClass;} } tr[k].onmouSEOut = function(){ if(tr[k].className == options.clickClass){ return false;} else { tr[k].className = (k%2==0)? options.oddClass : options.evenClass; } } })(i) } } //调用 TableCss({tableName:"tb1"});

效果很简单,代码也很简单.

只是这句tr[k].className = (k%2==0)? options.oddClass : options.evenClass;写了三遍,本来是写在一个function里的,但不知道在闭包里那么写会不会影响性能(任务管理器里也没看到有cpu使用率暴涨的情况),最后还是决定这么写,呵呵.

测试代码:

rush:xhtml;">

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》及《用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...