問題描述
我想調試 (檢查 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 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。