2017-06-12 55 views
0

我想確保下面的函數被「附加」到適當的事件中。 該函數執行,但我無法在Chrome>全局偵聽器中看到它。 (我認爲這將是下鼠標,點擊事件)如何查看匿名.js函數是否已附加到onclick事件?

/* expander control */ 
$().ready(function() { 
    $(document).on('click', '.js-expander', function(e){ 
    var e = e || event, 
     $el = $(this), 
     $content; 

    e.preventDefault(); 

    $content = $el.parent().next('.js-expander-content') 
    if ($content.length == 0) 
     $content = $el.parent().parent().next('.js-expander-content') 
     if ($content.length == 0) 
     $content = $el.siblings('.js-expander-content'); 

    $content.slideToggle(150); 
    }) 
}) 

回答

1

.on方法調用的第二個參數是「選擇字符串以濾除觸發事件的選定元素的後代。」

這意味着您將無法找到附加到文檔(全局事件)的click事件;相反,它將被附加到與選擇器匹配的每個元素(「.js-expander」)。

您可能想要檢查連接到這些元素中的每一個事件處理程序,如果有擺在首位任何這樣的元素(嘗試:console.log($(".js-expander").length);

+0

鏈接添加到這個答案,我會標記你響應答案:https://stackoverflow.com/a/25236337/4906 –

+0

愚蠢的問題:我在哪裏鍵入console.log命令? (我在控制檯>提示符下嘗試過,但得到了語法錯誤:意外的令牌。 –

相關問題