2011-11-17 43 views
2

有沒有什麼辦法讓我的瀏覽器告訴我什麼是當我點擊例如一個div時執行的第一個JavaScript。Javascript起點

讓我打破它,

代碼示例:

<div id='hello'> Hi There </div> 
jQuery('hello').bind('click', function() { alert('hello') }); 

上面的代碼將自然,當我點擊它顯示打招呼。但是有沒有辦法讓Chrome中的螢火蟲或控制檯在沒有明確設定斷點的情況下自動斷開第一個第一個JavaScript調用。

在一個複雜的JavaScript網頁中有很多綁定,但需要數小時才能找到它背後的實際代碼。

回答

1

你可以得到一個元素的所有事件與console.log($(element).data("events"));

1

所以,如果我下面的問題,你有這樣的場景:

jQuery('#hello') //function call 1 
    .bind('click', function(){ function call 2 
     alert('hello'); 
    }); 

一種方法做這將是覆蓋要測試的功能。你緩存實際的函數,用你的函數覆蓋它進行調試,然後用原始參數執行你的緩存。

(function(){ 
    var _jquery = jQuery; 
    jQuery = function(){ 
     console.log('debug'); 
     _jquery(arguments); 
    } 
})();