2011-08-19 125 views
67

有沒有辦法告訴Chrome調試器(或者可能是Firebug?)在某些文件中不能中斷?假設他們沒有壞,基本上?這似乎是他們可能內置的東西。我可以告訴Chrome腳本調試器忽略jquery.js嗎?

+1

這將是jQuery的事件的情況下特別有用我。當一個事件被觸發時,你必須通過大量的泥土來確定哪個處理程序正在被調用。 – tofarr

+0

它看起來應該標記jfriend00作爲答案。我找不到那種令人討厭的行爲的原因,他的回答解決了它。 – OrPaz

+0

@OrPaz我不同意,我的問題(我Josh的問題的理解)是我們調試我們的文件,但是這並不意味着一個異常被拋出。我的假設是,我的代碼是問題,而不是jQuery的,所以我從不想調試jQuery。我認爲它就像DebuggerHiddenAttribute中的一樣。NET –

回答

27

Blackboxing JS文件,現在可以在Firefox https://developer.mozilla.org/en-US/docs/Tools/Debugger

而在Chrome Canary版使用的實驗開發工具。 http://www.divshot.com/blog/tips-and-tricks/ignoring-library-code-while-debugging-in-chrome/

上面現在工作穩定的Chrome瀏覽器版本爲好。

+4

Blackboxing似乎並沒有讓調試器跳過這個文件。它仍然會通過它的函數調用...完全忽略文件會很好。 –

+2

這就是blackboxing的一點 - 運行代碼而不看它的內容。 – diynevala

+1

當您不通過其他庫時,它不是黑盒子,而不是它們不存在或未被使用。 – johnny

2

如果調試器在jQuery文件中某處爆炸,您可能潛在地將可疑呼叫包裝在try/catch中,然後在您自己的catch中引發錯誤。這樣,你可以確切地隔離你的錯在哪裏。

我會更傾向於做堆棧跟蹤,看看爲什麼我的代碼被吹起來,例如無效的JSON,比試圖掩蓋它。

15

如果您遇到的問題是,Chrome的調試器停在所有異常,甚至jQuery的內部的操作,然後你可能需要讓Chrome只在未捕獲的異常,而不是所有異常暫停。在調試器的「腳本」面板中,在控制此功能的窗口左下角有一個圖標。

+0

用這個給我保存了!謝謝!(+ 1) – OrPaz

16

瀏覽器的最新版本已實現了新blackbox feature已經做了你正在尋找什麼。基本上,當您在給定文件上設置黑盒選項時,它會阻止Chrome調試器進入該文件。

此功能是內置的,它可以與該文件(右鍵)的上下文菜單中進行設置。如果Chrome調試器設置爲停止所有異常,它也可以工作。

+1

非常乾淨的解決方案無需插件。 –

+2

不幸的是不再有效。 如果你有「暫停上捕獲異常」選項,然後黑匣子jQuery它仍然會打破例外。 – blackmamba

3
  1. 轉到開發人員工具設置,然後單擊左側面板上的Balckboxing選項卡。
  2. 然後點擊添加圖案按鈕並鍵入jquery.js
  3. 關閉並重新打開開發人員工具,現在將其跳過!
3

在Chrome中,開放式開發工具,然後轉到設置,你會看到黑箱標籤:

Chrome Blackbox

在Firefox中那就更簡單了,只需按一下眼睛在底部文件:

FireFox Blackbox

相關問題