我是靠谱客的博主 个性电话,最近开发中收集的这篇文章主要介绍js 不同css样式切换,JS实现的样式切换功能tableCSS实例,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

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

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

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; i

//用了闭包

(function(k){

//设置奇偶行样式

tr[k].className = (k%2==0)? options.oddClass : options.evenClass;

//点击样式

tr[k].onclick = function(){

if (tr[k].className == options.clickClass){

tr[k].className = (k%2==0)? options.oddClass : options.evenClass;

}

else {

tr[k].className = options.clickClass;

}

}

//鼠标HOVER样式,如果已经是点击样式,则不变化

tr[k].onmouseover = 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使用率暴涨的情况),最后还是决定这么写,呵呵.

测试代码:

123456123456123456
123456123456123456
123456123456123456
123456123456123456

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

最后

以上就是个性电话为你收集整理的js 不同css样式切换,JS实现的样式切换功能tableCSS实例的全部内容,希望文章能够帮你解决js 不同css样式切换,JS实现的样式切换功能tableCSS实例所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部