簡體   English   中英

懸停時將帶有jQuery的類添加到特定的菜單項

[英]Add class with jQuery to specific menu-items when hovering

當將菜單懸停在圖像上時,我想將帶有jQuery的類添加到特定的菜單項。 菜單項具有在其他地方進行硬編碼的項ID。 下面的代碼可以正常工作,但是我必須對每個特定的菜單項進行編碼,但這並不是我的意圖。

jQuery(document).ready(function(){
    jQuery('.menu > li.item-447 > a').hover(function() {
        jQuery('.menu > li.item-447 > a > span').toggleClass('nav-label');
    });
    jQuery('.menu > li.item-449 > a').hover(function() {
        jQuery('.menu > li.item-449 > a > span').toggleClass('nav-label');
    });
    jQuery('.menu > li.item-... > a').hover(function() {
        jQuery('.menu > li.item-... > a > span').toggleClass('nav-label');
    });
});

我已經嘗試過此代碼,但是將鼠標懸停在所有菜單項上時會得到額外的類“ nav-label”。

jQuery(document).ready(function(){
    jQuery('.menu > li.item > a').hover(function() {
        jQuery('a', this); 
        jQuery( '.menu > li > a > span' ).toggleClass( 'nav-label' );
    });
});

有什么建議么?

您可以通過this關鍵字獲取特定的菜單項,然后使用jQuery(this)將其轉換為jQuery對象。

嘗試這個:

jQuery(document).ready(function(){
    jQuery('.menu > li > a').hover(function() {
        jQuery(this).children('span').toggleClass('nav-label');
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM