小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IE調(diào)試網(wǎng)頁(yè)之三:使用 F12 工具控制臺(tái)查看錯(cuò)誤和狀態(tài) (Windows)

 天使之翼 ` 2019-07-01

  使用 F12 開發(fā)人員工具控制臺(tái)命令,可以接收來自 Windows Internet Explorer 9 的錯(cuò)誤消息,并從代碼發(fā)送回你自己的消息,而無需中斷執(zhí)行流。

  可以使用 F12 工具控制臺(tái)視圖在程序代碼之外立即運(yùn)行腳本語(yǔ)句。

  控制臺(tái)選項(xiàng)卡和視圖

  可以從“控制臺(tái)”選項(xiàng)卡或“腳本”選項(xiàng)卡下的控制臺(tái)窗格中查看 F12 工具控制臺(tái)消息??刂婆_(tái)在打開時(shí)收到來自 Windows Internet Explorer 的消息(例如,代碼中包含錯(cuò)誤時(shí))。Internet Explorer 9 可以向控制臺(tái)發(fā)送很多信息消息和錯(cuò)誤消息 。若要導(dǎo)航到代碼中的某個(gè)錯(cuò)誤位置,請(qǐng)單擊錯(cuò)誤中提供的源信息。 如果在關(guān)閉 F12 工具時(shí)出現(xiàn)消息,則下次打開 F12 工具時(shí)會(huì)顯示警告消息。以下屏幕截圖顯示 F12 工具控制臺(tái)。

“腳本”選項(xiàng)卡的控制臺(tái)窗格中的由 Internet Explorer 發(fā)送的代碼錯(cuò)誤的屏幕截圖

  你還可以從代碼向控制臺(tái)發(fā)送消息 以記錄狀態(tài)、標(biāo)志錯(cuò)誤或使用控制臺(tái)對(duì)象的相關(guān)問題的警告。Internet Explorer 9 提供了四種類型的消息 以區(qū)分代碼中的問題 - 日志、警告、錯(cuò)誤和信息。調(diào)試時(shí)可以使用這些消息,而不使用 "window.alert()",或者只保留運(yùn)行日志(如果在代碼中進(jìn)行了重要聲明)。消息字符串可以包含文本、 變量、表達(dá)式結(jié)果或者所有這些內(nèi)容的組合。以下屏幕截圖顯示已顯示了多條消息的 F12 工具控制臺(tái)。

從用戶腳本代碼發(fā)送的控制臺(tái)消息的屏幕快照

  將消息從代碼發(fā)送到控制臺(tái)

  F12 工具提供了可從腳本代碼中使用的命令,用于發(fā)送消息,啟動(dòng)或停止分析,或者更改用于評(píng)估鍵入控制臺(tái)的腳本語(yǔ)句的窗口。

  使用控制臺(tái)對(duì)象,以將消息從代碼發(fā)送到控制臺(tái)。 測(cè)試代碼時(shí)使用控制臺(tái)而不使用 "window.alert()",這樣不會(huì)太明顯,因而不會(huì)通過模式對(duì)話框停止執(zhí)行。此對(duì)象提供大量表單,以便在需要時(shí)能夠區(qū)分信息消息和錯(cuò)誤消息。使用控制臺(tái)對(duì)象時(shí),請(qǐng)確保打開 F12 工具。為了避免執(zhí)行不必要的代碼,請(qǐng)使用以下功能測(cè)試:

if(window.console && window.console.clear)

  在測(cè)試大量不具有括號(hào)和參數(shù)的 Internet Explorer 9 對(duì)象時(shí),則如果存在功能,其將返回值 True。在這種情況下,我們將測(cè)試 console.clear() 功能。還可通過僅測(cè)試控制臺(tái)對(duì)象以進(jìn)行通用檢查:

if (window.console){
      // Add console commands here.
}

  window.console

  下表 展示可在腳本中使用的控制臺(tái)命令的語(yǔ)法和示例。

命令示例說明
log(message)
window.console.log("This is a logging message");
向控制臺(tái)打印" message",以“LOG:” 開頭。
warn(message)
window.console.warn("This is a warning message");
向控制臺(tái)打印警告" message"。該消息以 警告圖標(biāo)警告圖標(biāo)的圖片 開頭。
error(message)
window.console.error("This is an error message");
向控制臺(tái)打印錯(cuò)誤" message"。該消息文本顯示為紅色, 并以錯(cuò)誤圖標(biāo) 錯(cuò)誤圖標(biāo)的圖片開頭。
info(message)
window.console.info("This is an info message");
向控制臺(tái)打印信息性" message"。此消息以 信息圖標(biāo)信息圖標(biāo)的圖片 開頭。
clear()
window.console.clear();
清除控制臺(tái)中的消息。不清除你在控制臺(tái)命令行中 輸入的腳本錯(cuò)誤消息或腳本代碼。右鍵單擊“控制臺(tái)”窗格并單擊“清除控制臺(tái)”選項(xiàng)可清除 全部消息。
dir(object)
window.console.dir(oExample);
向控制臺(tái)打印 "object" 的 屬性。
assert(expression, message)
window.console.assert((x == 1), "assert message: x != 1");
打印 "message"(如果 "expression" 的值為 false)。
profile(report)
window.console.profile("My profile report");
開始在 "report" 的標(biāo)題下記錄配置文件信息。此命令等同于單擊“配置文件”選項(xiàng)卡上的“開始采樣”按鈕。
profileEnd()
window.console.profileEnd();
停止在上一個(gè)報(bào)告標(biāo)題下記錄配置文件信息。此命令等同于單擊“配置文件”選項(xiàng)卡上的“停止采樣”按鈕。 可以在“配置文件”選項(xiàng)卡上查看“報(bào)告”""。

  可以使用 "printf" 樣式的替代模式設(shè)置消息控制臺(tái)命令的格式。例如,你可以使用以下方法之一調(diào)用 "console.log":

console.log("Variable x = " + x + " and variable y = " + y)
console.log("Variable x = ", x, " and variable y = ", y)
console.log("Variable x = %d and variable y = %d", x, y)
  控制臺(tái)消息方法接受可選參數(shù),以允許將消息中的變量替換為值。例如,可以向控制臺(tái)發(fā)送一個(gè)功能報(bào)告錯(cuò)誤:
function sendErrorConsole(errorCode) {
       window.console.error("Error: %s occured", errorCode);
}

  在控制臺(tái)中執(zhí)行腳本和命令

  在“控制臺(tái)”選項(xiàng)卡或“腳本”選項(xiàng)卡中的“控制臺(tái)”窗格的底部,可以執(zhí)行一行 或多行控制臺(tái)命令或腳本語(yǔ)句??稍诳刂婆_(tái)中執(zhí)行任何有效的腳本命令或表達(dá)式。

  例如,若要查看變量值,請(qǐng)?jiān)诳刂婆_(tái)中鍵入名稱并按 Enter。若要更改腳本中某個(gè)變量的值, 請(qǐng)?jiān)诳刂婆_(tái)中鍵入所賦的值。 按向上鍵瀏覽之前執(zhí)行的命令。

帶單個(gè)命令行的控制臺(tái)視圖

  無論是否啟動(dòng)調(diào)試程序,都可以使用“腳本”選項(xiàng)卡中的“控制臺(tái)” 窗格。在斷點(diǎn)處停止執(zhí)行時(shí),在此窗格中輸入的命令將 在斷點(diǎn)的作用域內(nèi)運(yùn)行;當(dāng)執(zhí)行未暫停時(shí),命令將在全局作用域中運(yùn)行。

  使用 cd() 跨框架執(zhí)行命令

  腳本語(yǔ)句和命令的執(zhí)行 默認(rèn)情況下在頂級(jí)窗口的上下文中進(jìn)行。如果使用的是幀,則使用 "cd()" 控制臺(tái) 命令。

  cd()

  cd(window)

可以將命令行表達(dá)式計(jì)算 從網(wǎng)頁(yè)的默認(rèn)頂級(jí)窗口更改為幀的窗口。調(diào)用不帶參數(shù)的 cd() 會(huì)返回頂級(jí)窗口。

  下圖演示了在此處提供的示例中執(zhí)行的幾個(gè)步驟。

使用 cd() 的控制臺(tái)命令的屏幕截圖

  從控制臺(tái)視圖的頂部, 執(zhí)行以下命令:

  • cd() - 打印當(dāng)前窗口。
  • cd(myframe) - 將表達(dá)式計(jì)算 更改為 id 為“myframe”的示例幀。
  • counter - 顯示 iframe 中 名為“counter”的全局變量。
  • counter = 25 - 將計(jì)數(shù)器的值更改為 25。
  • cd() - 將表達(dá)式計(jì)算改回 默認(rèn)的頂級(jí)窗口。
  • counter - 在本例中,計(jì)數(shù)器在頂級(jí)窗口中 不是有效的變量。

  可使用 ID 名稱或 frames[] 集合來更改為 iframe。在本例中, "document.frames[0]" 同樣發(fā)揮作用。

  執(zhí)行多行 腳本

  若要執(zhí)行多行腳本命令,請(qǐng)單擊多行模式按鈕 多行模式按鈕的圖片 或按 Ctrl+Alt+M。在多行窗口中鍵入 script,然后單擊“運(yùn)行腳本”按鈕以執(zhí)行。與執(zhí)行一行腳本的單行模式不同,按 Enter 會(huì)在腳本窗口中 添加一個(gè)換行??烧{(diào)整大小的輸入窗口通過右鍵單擊或快捷菜單(如復(fù)制和粘貼) 以及 Unicode 功能來?yè)碛衅渌丶?/p>

帶多行腳本的控制臺(tái)視圖

  篩選消息并擴(kuò)展控制臺(tái)對(duì)象

  可以從控制臺(tái)窗格 篩選控制臺(tái)消息以顯示或隱藏某些類別的消息。若要篩選消息,請(qǐng)右鍵單擊“控制臺(tái)”窗格并將鼠標(biāo)指針懸停在“篩選器”上方。將顯示一個(gè)可用篩選器的列表,其中帶復(fù)選標(biāo)記的篩選器是活動(dòng)的。

消息篩選器菜單的圖片

  可以擴(kuò)展控制臺(tái)對(duì)象以添加 新功能。例如,你可能希望自定義方法以將格式化的調(diào)試消息輸出到控制臺(tái)。若要添加 "console.debug" 命令,則可向 JavaScript 代碼中添加以下代碼段:

console.debug = function(name, value){
    console.warn("DEBUG: " + name + "==" + value);
}

  此示例采用了兩個(gè)參數(shù),并使用某種最小化格式將它們輸出到“控制臺(tái)”窗格。但 可以隨意自定義函數(shù)參數(shù)和行為。通過這種方法,控制臺(tái)對(duì)象可以用于添加所需的任意數(shù)量的 新命令。

注意  由于你在新命令中使用了現(xiàn)有控制臺(tái)命令,因此仍將應(yīng)用篩選器。例如, 上一示例中的 console.debug 命令使用 console.warn 將消息輸出到“控制臺(tái)” 窗格。如果從“篩選器”列表中清除“控制臺(tái)警告”,則“控制臺(tái)”窗格中將不會(huì)顯示 console.warn 中的任何輸出。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多