ID好像是不能以数字开头的
你加个A3这样的试试好像和变量一个道理

解决方案 »

  1.   

      nNum1[0].setAttribute("className ","current";);
    如果真的是第一个的话
      

  2.   


    <style>
    .sub{background-color:red;}
    .current{background-color:blue;}
    </style>
    <script>
    window.onload = function()
    {
    var nNum1=document.getElementById("3").getElementsByTagName("ul");
    nNum1[0].className = "current";
    }
    </script>
    <ul id="3"><li><a href="#nogo"><b>John Constable</b></a>
    <div id="31">
        <ul class="sub">
            <li id="311"><a href="#nogo">The Hay Wain</a></li>
            <li id="312"><a href="#nogo">Brighton Beach</a></li>
            <li id="313"><a href="#nogo">Malvern Hall</a></li>
            <li id="314"><a href="#nogo">Salisbury Cathedral</a></li>
            <li id="315"><a href="#nogo">Weymouth Bay</a></li>
        </ul>
    </div></li>
    </ul>
    试了下,楼主的代码有效啊
      

  3.   

    var nNum1=document.getElementById("3");
    nNum1.className = "current";
    var nNum2=document.getElementById("31");
    nNum2.className = "select_sub show";
    var nNum3=document.getElementById("315");
    nNum3.className = "sub_show";
    你概念错了吧 getElementById已经得到控件本身了 在加个getElementsByTagName后 操作对象就错了