問題描述

我想除錯 (檢查 DOM,使用互動式 JS 控制檯等) 部分由 showModalDialog()建立的模態對話方塊內的 Web 應用程式。

我找不到使用標準 IE-8 開發人員工具的方法; 對話方塊沒有工具欄,通常的快捷方式 (F12) 不起作用。


另一個 SO 問題 (不幸的是丟失了連結),建議唯一的解決方案是 (或許暫時) 用 old-fashioned window.open()代替 showModalDialog()。如果是這樣的話,有沒有辦法呢?

注意事項:

  • 該應用程式關心傳遞 dialogArguments 和 showModalDialog 的返回值

  • 我不能使用其他瀏覽器,FF + Firebug 等

最佳解決思路

如果您開啟位址列,F12 可以啟動開發人員工具。

Go Tools / Internet options / Security / (pick the right zone for your site) / Custom Level Under “Miscellaneous” Under “Allow websites to open windows without address or status bars”, choose “Disable”.

資料來源:https://stackoverflow.com/a/10984858/79835

次佳解決思路

我透過在 js 程式碼中建立一個錯誤來實現,然後會彈出錯誤視窗,詢問是否要除錯指令碼。

一種方法是在程式碼中的某個地方呼叫 non-existent 方法。

e.g. blabla();

第三種解決思路

當我除錯模態視窗時我做的是兩件事。

  • 您可以在您的 js 程式碼中包含指令偵錯程式; 這將阻止 js 的執行,就像你放置了一個斷點一樣。

  • 您也可以在開啟模態視窗之前開啟 ie 開發工具,一旦開啟視窗,您可以在指令碼選項卡中檢視生成的程式碼,新增斷點,暫停執行,… 所需的所有內容。

希望有幫助!

第四種思路

你現在可以把 debugger 這個字沒有引號放在你的 javascript 裡。

IE 和 Chrome 都應該打破它,就像你已經設定了一個斷點一樣。確保它自己在一條線上。按 F12 開啟瀏覽器偵錯程式,然後重新整理頁面或觸發事件執行您的 JavaScript,並且偵錯程式應自動顯示具有斷點設定的程式碼。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。