window.onload = function(){
...
}

解决方案 »

  1.   

    第一个li的id为navigation01,第二个以后的都为navigation02,所以错误了
      

  2.   

    numNode[i].id 这样添加属性是否正确
    在页面生成以前li标签里面是没有id这个属性的
      

  3.   

    是可以这么设置的,见下例,不过感觉最好通过其他方法,比如服务器端来做
    <div id="menuUl">
    <li>1111</li>
    <li>2222</li>
    <li>3333</li>
    <li>4444</li>
    </div>
    <script language=javascript>
    function window.onload()

    alert("haha")
    var allNode = document.getElementById( 'menuUl' );
    var numNode = allNode.getElementsByTagName('li');

    for( var i = 0; i < numNode.length; i++ )
    {
    if ( i == 0 )
    {
    numNode[i].id = "navigation01";
    }
    else
    {
    numNode[i].id = "navigation02";
    }
    }
    alert(allNode.innerHTML)
    }
    </script>
      

  4.   

    必须要这样啊 因为 <li>是服务器生成的
    其实这个东西就是一个类似淘宝网的菜单一个<li>标签加上a href=# 来指向某页
    <li>标签里面有id属性 如果id为navigation01代表该菜单项为当前的,高亮的 
    navigation02为普通的我需要动态的通过点击那个标签到哪页来判断我是否要高亮的显示那个 即设置该li的id为navigation02
      

  5.   

    不是的
    那个id是用来实现说明那个是高亮的
    id=navigation01 表示拥有此属性菜单是高亮,代表我现在所在的页
    另一个navigation02代表我其他页面 是普通颜色因为用户要点击那个是不确定的
    写死了不成啊
      

  6.   

    上面说的服务器端生成也只是生成初始化状态,其他客户端来做.不过这样也可以实现,也无所谓了
    第二个问题记录在URL上就不会丢了