ホームページ >ウェブフロントエンド >jsチュートリアル >msn_Navigation メニューのタブ機能における Firefox の childNodes 処理のバグ

msn_Navigation メニューのタブ機能における Firefox の childNodes 処理のバグ

WBOY
WBOYオリジナル
2016-05-16 19:06:351066ブラウズ

Firefox の childNodes 処理のバグ
childNodesFirefox は、childNodes を処理するときに改行とスペースをフィルタリングしません。そのため、初めて使用する場合には期待される効果が得られません。
HTML

コードをコピー コードは次のとおりです:



JS

コードをコピー コードは次のとおりです。
function tab(btn)
{
var idname = new String(btn.id)
var s = idname.indexOf("_" );
var e = idname.lastIndexOf("_") 1;
var tabName = idname.substr(0, s); substr(e, 1)) ;
var tabNumber = btn.parentNode.childNodes.length; //IE と FF の値は異なります (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 = "ポインター";
btn.style.backgroundColor = "#fff"; .スタイル。カーソル = "default";
}


IE の menuList の childNodes.length の値は 5 ですが、Firefox の値は 11 です。 したがって、childNodes オブジェクトを使用する場合は、それを判断するか、最初にスペースを削除します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。