2017-06-20 82 views
1

我有以下jQuery代碼在WordPress的網站。jQuery代碼工作在控制檯,但不是在網站

jQuery(document).ready(function() { 
    jQuery(".responsive-menu > .menu-item").click(function(event){ 
    if (event.target !== this) 
    return; 
    jQuery(this).find(".sub-menu:first").slideToggle(function() { 
    jQuery(this).parent().toggleClass("show"); 
    }); 
}); 
}); 

正在切換的類將「.sub-menu」元素設置爲從「無」顯示到「塊」。

它在Chrome開發工具的控制檯中工作正常,但不在頁面中,它放置在DOM元素創建後。

如果我將代碼更改爲以下內容,則會執行警報,以便jQuery代碼不會執行任何問題。

jQuery(document).ready(function() { 
    alert("working"); 
}); 

有關這是爲什麼的任何建議?

編輯:

的解決方案是

jQuery(".menu-item").click(function(event){ 

,而不是

jQuery(".responsive-menu > .menu-item").click(function(event){ 

感謝您的幫助球員

+0

控制檯中是否有任何錯誤? – BenM

+1

'console.log(jQuery(「.response-menu> .menu-item」).length)'return?如果它是零其他問題 – charlietfl

+0

也分享html也 –

回答

1

試試這個吧。

(function($){ 
    $(document).ready(function() { 
     $(".responsive-menu > .menu-item").on('click',function(event){ 
      if (event.target !== this) 
       return; 
      $(this).find(".sub-menu:first").slideToggle(function() { 
       $(this).parent().toggleClass("show"); 
      }); 
     }); 
    }); 
})(jQuery) 
+0

不幸不幸 –

+0

仍然無法正常工作? –

相關問題