样式切换是一种比较常见的效果。
先说一下具体要做的效果,主要有两点:
1. 在三个并列元素中点击,点击后将增加一个class来控制显示。同时,未点击的两个元素,假如先前拥有这个clss,此后将丧失。
2. 在此三个元素中点击,将有一个对应的层随之出现。三个元素对应三个层。(也处理成addClass,当然直接写style也可以)
结构:
事实上我开始是想用setAttribute方法增加class。但是发现ie和ff互不兼容,ie下增加class的参数是className,而FF直接用class.(ff下加什么就是什么)。
用setAttribute是行不通的,但可以使用[obj.属性]来替代。
SO:
可用:
var v = document.getElementsById(“b1″);
v.className +=” current” //注意引号内的空格。
so
另外看一个别人写的:
感觉这个思路清晰多了,宏观考虑,通过判断id是否与当前按下按钮的元素对应,来添加或删除class名。
总结缺点:
如果原来还有class的,将会被覆盖掉。
一般这需要使用正则判断来解决。
方法:
综合,我们可以这样写
其实,对于class切换,我们经常用的场合是做tab选项卡。而对于tab选项卡,我们总结出一种非常简单方便的方法,这种方法主要特点就是“富css,瘦js”
标签: setAttribute, 样式切换