38

$(this).addClass('someStyle')一部のCSSスタイルは、ホバー時に要素に適用する必要があります。CSSスタイルは、スタイルシートを介さずに、またはDOM要素を別のページに挿入しているため、javascript/jqueryを使用して直接適用する必要があります。

通常のcssスタイルを使用して適用できます

$('#some-content').css({
    marginTop: '60px',
    display: 'inline-block'
});

:hoverイベントのCSSスタイルをどのように追加する必要がありますか?


次のことに頼る必要がありますか?

$('#some-content').hover(
       function(){ $(this).css('display', 'block') },
       function(){ $(this).css('display', 'none') }
)
4

4 に答える 4

34

私は、mouseenterとmouseleaveを使用する方がホバーよりも優れていると思います。より多くの制御があります。

$("#somecontent").mouseenter(function() {
    $(this).css("background", "#F00").css("border-radius", "3px");
}).mouseleave(function() {
     $(this).css("background", "00F").css("border-radius", "0px");
});
于 2012-12-04T16:16:00.347 に答える
19

これを試して:

$('#some-content').hover(function(){
    $(this).css({ marginTop: '60px', display: 'inline-block' });
}, function(){
    $(this).css({ //other stuff });
});

またはクラスを使用する

$('#some-content').hover(function(){
    $(this).toggleClass('newClass');
});

詳細はこちら.hover()および.toggleClass()

于 2012-12-04T16:16:55.677 に答える
3

それらをホバーイベントに入れる必要があります。

var elem = $('#elem');

elem.hover(function () {
    // ... :hover, set styles
}, function () {
    // ... this function is called when the mouse leaves the item, set back the
    //     normal styles
});

ただし、CSSをクラスに配置し、それらのクラスをJSで使用することを強くお勧めします。可能な限り、言語を分割する必要があります。

于 2012-12-04T16:17:37.563 に答える
2
$("#someObj").hover(function(){
    $(this).css(...);
}:);

http://api.jquery.com/hover/

于 2012-12-04T16:18:29.497 に答える