Groune
2015-05-12 15:16
刚才看到不一样的效果,实现一下。
我也遇到了这个问题,不知你解决没有?
我发现原因是第一次点击时,CSS中display属性被设为none的ul元素,通过alert(uls[this.idex].style.display)方法显示的结果是空字符,只有第二次点击时才会显示none,这样就导致第一次点击时会执行else中的内容,结果看上去没有变化。我没有想通为什么第一次点击display属性没有值,不知道你现在是否知道原因?如果知道请分享下,谢谢。
目前我的解决办法是将判断语句if(uls[this.idex].style.display == "none")改为if(uls[this.idex].style.display == 'none'||uls[this.idex].style.display == '')
if(uls[this.idex].style.display == "block"){
uls[this.idex].style.display="none";
}else {
for(var j=0;j<uls.length;j++){
uls[j].style.display="none";
}
uls[this.idex].style.display="block";
}
为什么第一次点击隐藏的列表没有反应,点第二次或者点显示的列表就没问题,本地测试时没有出现这种情况啊。
Tab选项卡切换效果
65465 学习 · 533 问题
相似问题