手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >msn上的tab功能Firefox对childNodes处理的一个BUG
msn上的tab功能Firefox对childNodes处理的一个BUG
摘要:Firefox对childNodes处理的一个BUGchildNodesFirefox在处理childNodes没有过滤换行与空格。所以在初...

Firefox对childNodes处理的一个BUG

childNodesFirefox在处理childNodes没有过滤换行与空格。所以在初次使用的时候,得到效果不是预期的效果。

HTML

复制代码 代码如下:

<ulclass="tbtn"ID="menuList">

<liclass="curr"id="tabap3_btn_0"onclick="tabit(this)">理财大学B</li>

<liid="tabap3_btn_1"onclick="tabit(this)">名医讲堂</li>

<liid="tabap3_btn_2"onclick="tabit(this)">名医讲堂</li>

<liid="tabap3_btn_3"onclick="tabit(this)">名医讲堂</li>

<liclass="lst"id="tabap3_btn_4"onclick="tabit(this)">影坛热点</li>

</ul>

JS

复制代码 代码如下:

functiontabit(btn)

{

varidname=newString(btn.id);

vars=idname.indexOf("_");

vare=idname.lastIndexOf("_")+1;

vartabName=idname.substr(0,s);

varid=parseInt(idname.substr(e,1));

vartabNumber=btn.parentNode.childNodes.length;//IE和FF的值不同

for(i=0;i<tabNumber;i++)

{

if(document.getElementById(tabName+"_div_"+i)!=null)//这里需要进行判断

{

document.getElementById(tabName+"_div_"+i).style.display="none";

document.getElementById(tabName+"_btn_"+i).style.backgroundImage="url(pic/t-1-2.gif)";

document.getElementById(tabName+"_btn_"+i).style.borderBottomColor="#D7F2DA";

document.getElementById(tabName+"_btn_"+i).style.cursor="pointer";

}

}

document.getElementById(tabName+"_div_"+id).style.display="block";

btn.style.backgroundColor="#fff";

btn.style.borderBottomColor="#fff";

btn.style.cursor="default";

}

在IE上menuList的childNodes.length的值为5,而在Firefox值为11.因此我们在使用childNodes对象时需要先对其判断或去掉空格。

【msn上的tab功能Firefox对childNodes处理的一个BUG】相关文章:

javascript实现图片跟随鼠标移动效果的方法

jquery右下角自动弹出可关闭的广告层

JavaScript中停止执行setInterval和setTimeout事件的方法

js实现鼠标划过给div加透明度的方法

jQuery解析XML文件同时动态增加js文件的方法

限制复选框的最大可选数

nodejs修复ipa处理过的png图片

MSN消息提示类

JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法

无限扩展的年份select

精品推荐
分类导航