0

divのグループにクラスを与えましたが、その上にマウスを置くとdivの背景色を変更したいと思います。私がしたことはこれです:
HTML

<div class="menu_top">
<div id="1" class="menu_top_menu">Home</div> 
<div id="2" class="menu_top_menu">About Us</div> 
<div id="3" class="menu_top_menu">Register</div> 
<div id="4" class="menu_top_menu">Contact Us</div> 
</div>

JQuery

$(document).ready(function() {
    $('.menu_top_menu').mouseover(function(){
    $('this').attr('style','background-color:yellow;');
    });
});

これはID参照で機能しますが、クラスで機能したいと思います。私は間違って何をしていますか?

4

1 に答える 1

5

$(this)の代わりに使用してください$('this')-の前後に引用符はありませんthis

また、通常はを使用attr()して設定することはありません。このメソッドstyleを使用して、問題の特定のCSSプロパティを設定します。.css()

$(this).css('background-color', 'yellow');

マウスが要素の上にあるときにのみ背景を変更することを意図している場合(つまり、マウスアウトで背景を元に戻すこと):hover、CSSで疑似クラスを使用することにより、JSなしで簡単に行うことができます。

div.menu_top_menu:hover {
    background-color : yellow;
}
于 2013-02-20T10:54:55.780 に答える