javascript
  • debugging
  • stack-trace
  • 2011-08-12 41 views 0 likes 
    0

    我需要這個,因爲我經常在現有項目上工作,而且我需要直接進入其他人的工作中。很少有時間現在,我正在尋找的任何工具,我可以找到這樣做:顯示Javascript中調用了哪些函數

    1. 加載一個JS應用
    2. 開始/暫停錄製活動
    3. 告訴我到底發生了什麼,在形式什麼函數被調用而不需要我更改源代碼。

    例如:

    <script language="javascript"> 
    var fn1 = function(strvar){ alert('var='+strvar); fn2(strvar); } 
    var fn2 = function(strvar2){ alert('var='+strvar2); } 
    </script> 
    <a href="javascript:fn1(this.innerHTML);">click here</a> 
    

    之後,我點擊了錨,(最好)應該得到這樣的事情:

    1. (點擊)事件上一個
    2. (呼叫) fn1(「點擊這裏」)
    3. (呼叫)fn2(「點擊這裏」)從fn1內部調用pct。 2

    某種堆棧跟蹤,但無需更改源,因爲它需要很長的時間。

    +1

    您是否嘗試過Firefox中的Firebug插件?它具有相當不錯的調試支持javascript – Gaim

    回答

    0

    如果您在最裏面的函數寫

    debugger; 
    

    ,你可以打開Firebug或Chrome瀏覽器開發工具,當它碰到這條線的調試器將暫停。然後在工具右側的部分中,您可以看到堆棧跟蹤和其他相關數據(本地人等)。

    你只需要添加一行到你自己的函數,它會顯示任何與任何人的代碼進行的調用。

    +0

    這就是我試圖找出,在哪裏添加「調試器」;因爲我有從外部文件附加的處理程序,動態附加了十分之一的腳本,以及其他語言中偶爾使用的var名稱。 –

    +0

    啊,我現在看到問題了。你可以檢查感興趣的元素。在檢查器中(特別是在Chrome中),右側窗格的底部顯示事件偵聽器的列表以及附加到它們的函數。您可以檢查該列表,然後在必要時添加斷點(通過在代碼中添加「調試器」語句或在調試器中手動設置其他人代碼中的斷點)。 不幸的是,這裏沒有很好的解決方案。 – Steve

    相關問題