<script language="javascript">
<!--
  function setClassName(the,a)
    {
  the.className = a;
}
-->
</script><li id="l1"><a href="#" onClick=setClassName(l1,"li_bg")></li>
<li id="l2"><a href="#" onClick=setClassName(l2,"li_bg")></li>
<li id="l3"><a href="#" onClick=setClassName(l3,"li_bg")></li>
<li id="l4"><a href="#" onClick=setClassName(l4,"li_bg")></li>为什么我鼠标离开全部都加了样式li_bg,我只需要点击过后当前的一个

解决方案 »

  1.   

    <style>
    .a
    {
    background-color:#000000;
    }
    .b
    {
    background-color:#ffffff;
    }
    </style>
    <ul>
    <li id="aaa1"  onclick="setClassName(this,'a')"> <a href="#">aaaa</a> </li> 
    <li id="aaa2"  onclick="setClassName(this,'a')"> <a href="#">bbbbb</a> </li> 
    <li id="aaa3"  onclick="setClassName(this,'a')"> <a href="#">ccccc </a></li> 
    <li id="aaa4"  onclick="setClassName(this,'a')"> <a href="#">ddddd </a></li> 
    </ul>
    <script language="javascript"> 
    function setClassName(obj,style)   

       for(var i=1;i<5;i++)
       {
          var dx=eval('document.getElementById("aaa'+i+'")');
      if(dx==obj)
      {
         dx.className=style;
      }
      else
      {
         dx.className='b'; //或者设置为空
      }
       }
       

    </script>