貌似是老问题了。为什么下面的例子在IE和其他浏览器中正常,而在火狐中不正常啊。
做了个标签切换的例子
<ul>
<li onclick="settab(0);">标题一</lli>
<li onclick="settab(1);">标题二</lli>
<li onclick="settab(2);">标题三</lli>
<li onclick="settab(3);">标题四</lli>
....
....
</ul>
<div id="tabbox" style="display:;">内容一</div>
<div id="tabbox" style="display:none;">内容二</div>
<div id="tabbox" style="display:none;">内容三</div>
<div id="tabbox" style="display:none;">内容四</div>
....
....
JS部分:
<script language="javascript1.1">
function settab(tabnum){
var objName=document.getElementById("tabbox");
TolDivname = tabbox.length;
for (var jCount = 0 ; jCount < TolDivname ; jCount ++){
if (jCount==tabnum){
tabbox[jCount].style.display="block";
}else{
tabbox[jCount].style.display="none";
}
}
}
</script>像这样每个DIV单独的ID名称 
       var objName1=document.getElementById("tabbox1");
       var objName2=document.getElementById("tabbox2");
然后这样
        objName1.style.display="none";
类似的 倒是能解决,但是想问下 像我上面那样的,就是所有的内容的DIV 都用同一个ID的 有没有上面解决办法啊。

解决方案 »

  1.   

    页面元素公用一个ID……………………LZ要不就换成同一个name算了。或者用js框架,用class来读取同一类的div。
      

  2.   

    换成同一个name之后呢  用getElementsByName 吗?我好像也试试过了 还是不行呢
      

  3.   

    多个div取相同的id不符合w3c标准
      

  4.   

    用document.getElementsByTagName("div");
    获得这几个div   。
      

  5.   

    可以把你要的div都放到一个div里面,然后取这个div的childNodes
      

  6.   

    感谢大家,特别感谢5楼得朋友。问题解决。
    分享下:
    内容全放在一个div 下面
    <div id="WebBox">
      <div>内容一</div>
      <div>内容一</div>
    </div>
    然后 getElementsByTagName 取节点function set_tab(tabnum){
    var objName=document.getElementById("WebBox");
    var tabList = objName.getElementsByTagName("div");
    TolDivname = tabList.length;
    for (var jCount = 0 ; jCount < TolDivname ; jCount ++){
    if (jCount==tabnum){
    tabList[jCount].style.display="block";
    }else{
    tabList[jCount].style.display="none";
    }
    }
    }