我使用了一些非常大且令人困惑的JavaScript文件,這些文件並沒有寫入。有時候會有警報出現,但我不知道它來自哪裏。有什麼方法可以獲取警報框的來源?
您可以搜索警報中包含的文本的所有文件,但如果該文本是動態的,則不起作用。
有沒有辦法設置斷點來攔截警報?
我使用了一些非常大且令人困惑的JavaScript文件,這些文件並沒有寫入。有時候會有警報出現,但我不知道它來自哪裏。有什麼方法可以獲取警報框的來源?
您可以搜索警報中包含的文本的所有文件,但如果該文本是動態的,則不起作用。
有沒有辦法設置斷點來攔截警報?
它可能會對您有所幫助,但您可以覆蓋alert
函數以隨心所欲地執行任何操作。例如,您可以讓它將消息記錄到控制檯,而不是提醒框。
window.alert = function(msg) {
console.log(msg);
}
alert('test');
打開Chrome推F12
鍵,然後轉到Sources
。 然後選擇一個腳本文件Ctrl+F
並搜索警報。 你可以把斷點放在任何你想要的線上
我同意布賴恩格拉茨,但爲了獲得更多的細節(行號),你可能會嘗試拋出一個錯誤,當提醒某些東西並在控制檯上輸出錯誤。這樣,控制檯會將您指向警報函數被調用的正確行號。
把這個片段在文檔的頂部,並給它一個嘗試:
var originalAlert = window.alert;
window.alert = function(){
try{
throw new Error('alert was called');
} catch(e){
console.warn(e);
}
return originalAlert.apply(window, arguments);
}
搜索文件不是太難尤其是對警報。它真的沒有用過很多(主要是因爲JavaScript警報很煩人)。如果你在linux上,使用grep。如果你在Mac上,使用grep。如果您在Windows上,請安裝Linux。 –