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의 값이 다릅니다.
for(i=0;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 = "포인터"
~ ;
btn.style.BackgroundColor = "#fff";
btn.style.borderBottomColor = "#fff";
btn.style.cursor = "default";
}
childNodes의 값입니다. IE에서는 menuList의 길이가 5이고 Firefox에서는 값이 11입니다. 따라서 childNodes 객체를 사용할 때는 먼저 이를 판단하거나 공백을 제거해야 합니다.