<script>
$(document).ready(function() {$('.m').hover(
function(){
$("a").css("background","#fa0");
},
function(){
$("a").css("background","#0aa");
});
});
</script><div class="box" id="box">
<div class="m" id="m01"><a href=#">44</a></div>
<div class="m" id="m02"><p>4</p>4</div>
<div class="m">44</div>
<div class="m" id="m01">401014</div>
<div class="m"><p>42</p>44</div>
<div class="m"><a href=#">4444</a></div>
<div class="m">44</div>
</div>鼠标进出时,只让本div内的a背景变色,该怎么写啊?最好不要用each

解决方案 »

  1.   

    哥们,a变色,你直接用css就能实现了,还搞什么js啊?.m a{background:默认颜色;}
    .m a:hover{background:经过的颜色;}
      

  2.   

    楼上说的对呀。如果不用each,那就只能是使用css了。
      

  3.   

    $(document).ready(function() {
         $('.m').hover(
            function(){
                $(this).children('a').css("background", "#fa0");
            },
            function(){
                $(this).children('a').css("background", "#0aa");
            }
        );
    });
      

  4.   

    其实,不要动态去改a的属性,如果div里有很多个a就慢了。
    可以定义两个.aaa a {
    }.bbb a {
    }然后div鼠标移动的时候,给这个div切换class aaa和bbb就行了,js做的工作最少
      

  5.   


    $(document).ready(function() {
         $('.m').hover(
            function(){
                $(this).removeClass('aaa').addClass('bbb');
            },
            function(){
                $(this).removeClass('bbb').addClass('aaa');
            }
        );
    });剩下的在css里定义