<html>
</head>
<script>
window.onload=w;
function w(){
var ap=document.getElementsByTagName("p");
for(var i=0; i<ap.length; i++){ap[i].onmouseover=function(){this.style.background="#008080"}}
}
</script>
<head>
<body>
<div style="background:#808000;width:500px">
<p>aaaaaaaaaa</p>
<p>bbbbbbbbbb</p>
<p>cccccccccc</p>
</div>
</body>
</html>
在IE下鼠标指向文字时改变背景颜色,但是指向文字所在的一行的空白处时却没反应,不知如何解决?还有鼠标离开后颜色转换回来有没有简单点的代码?

解决方案 »

  1.   

    <head>的标签写反了吧?所以script没有作用。
      

  2.   

    <p>aaaaaaaaaa</p>标签不是一行,而就只有文字显示的大小,所以鼠标移到空白处,跟<p>标签没关系
      

  3.   

    LZ可以考虑下用其他标签代替,比如DIV标签
      

  4.   


    <html>
    <head>
    <script>
    window.onload=w;
    function w(){
    var ap=document.getElementsByTagName("p");
    for(var i=0; i<ap.length; i++){ap[i].onmouseover=function(){this.style.background="#008080"};ap[i].onmouseout=function(){this.style.background="#808000"}}
    }
    </script>
    </head>
    <body>
    <div style="background:#808000;width:500px">
    <p style="width:500px">aaaaaaaaaa</p>
    <p>bbbbbbbbbb</p>
    <p>cccccccccc</p>
    </div>
    </body>
    </html>
      

  5.   


    <html>
    <head>
    <script>
        window.onload=w;
        function w(){
            var ap=document.getElementsByTagName("li");
            for(var i=0; i<ap.length; i++){
    ap[i].onmouseover=function(){this.style.background="#008080"};
    ap[i].onmouseout=function(){this.style.background="#808000"};
    }
        }
    </script>
    <style>
    li {
    list-style-type: none;
    }
    </style>
    </head>
    <body>
        <ul style="background:#808000;width:500px">
            <li style="width:500px">aaaaaaaaaa</li>
            <li>bbbbbbbbbb</li>
            <li>cccccccccc</li>
        </ul>
    </body>
    </html>
      

  6.   

    非常感谢,我想把onmouseover改作onclick,点击另一个标签后前一个标签变回以前的颜色有好的方法吗?