国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Chrome(谷歌)瀏覽器調(diào)試教程珍藏版

前言

 鳴謝殷老師,非常優(yōu)秀的學習資料,分享給大家,希望對大家有幫助!                                                        JavaEE助教  殷世騰

引言

在web開發(fā)過程中,我們在寫JavaScript腳本時難免會遇到各種bug,這時,我們就需要去調(diào)試我們的JavaScript腳本,然后去修改代碼。最簡單的調(diào)試方法就是使用alert方法,將可信息通過alert方法的彈窗顯示出來。但是,alert方法有幾個弊端:

1)alert方法在彈出窗口時會中斷程序;
2)在循環(huán)中使用alert()方法時,如果不點擊alert彈窗的確定按鈕,下一個alert就不會出現(xiàn);
3)alert方法在顯示對象時永遠只顯示[Object],無法看到對象中的具體細節(jié);
正是由于alert方法存在上述缺點導致了alert方法只適合一些小程序。如果想要查看JavaScript腳本的執(zhí)行過程,HTTP請求信息,執(zhí)行過程中的數(shù)據(jù)信息則需要學會使用瀏覽器的開發(fā)者工具進行調(diào)試。

學習目標:
1.Chrome瀏覽器簡介及下載與安裝(了解);
2.瀏覽器加載Html頁面的過程(了解);
3.Chrome瀏覽器開發(fā)者工具面板的介紹(熟悉);
4.使用Chrome開發(fā)者工具調(diào)試JavaScript腳本(掌握);
5.Chrome瀏覽器的其他設置(了解);

1.瀏覽器簡介

瀏覽器界面:

瀏覽器的用戶界面有很多彼此相同的元素,其中包括:
用來輸入 URI 的地址欄
前進和后退按鈕
書簽設置選項
用于刷新和停止加載當前文檔的刷新和停止按鈕
用于返回主頁的主頁按鈕

瀏覽器的主要功能:

  瀏覽器的主要功能就是向服務器發(fā)出請求,在瀏覽器窗口中展示您選擇的網(wǎng)絡資源。這里所說的資源一般是指 HTML 文檔,也可以是 PDF、圖片或其他的類型。資源的位置由用戶使用 URI(統(tǒng)一資源標示符)指定。
  瀏覽器解釋并顯示 HTML 文件的方式是在 HTML 和 CSS 規(guī)范中指定的。這些規(guī)范由網(wǎng)絡標準化組織 W3C(萬維網(wǎng)聯(lián)盟)進行維護。
多年以來,各瀏覽器都沒有完全遵從這些規(guī)范,同時還在開發(fā)自己獨有的擴展程序,這給網(wǎng)絡開發(fā)人員帶來了嚴重的兼容性問題。如今,大多數(shù)的瀏覽器都是或多或少地遵從規(guī)范。 
簡而言之,就是一個獲取網(wǎng)頁,并將它顯示給用戶的工具。

瀏覽器的高層結(jié)構(gòu)

瀏覽器的主要組件為 (1.1):
用戶界面 - 包括地址欄、前進/后退按鈕、書簽菜單等。除了瀏覽器主窗口顯示的您請求的頁面外,其他顯示的各個部分都屬于用戶界面。
瀏覽器引擎 - 在用戶界面和呈現(xiàn)引擎之間傳送指令。
呈現(xiàn)引擎 - 負責顯示請求的內(nèi)容。如果請求的內(nèi)容是 HTML,它就負責解析 HTML 和 CSS 內(nèi)容,并將解析后的內(nèi)容顯示在屏幕上。
網(wǎng)絡 - 用于網(wǎng)絡調(diào)用,比如 HTTP 請求。其接口與平臺無關,并為所有平臺提供底層實現(xiàn)。
用戶界面后端 - 用于繪制基本的窗口小部件,比如組合框和窗口。其公開了與平臺無關的通用接口,而在底層使用操作系統(tǒng)的用戶界面方法。
JavaScript 解釋器-用于解析和執(zhí)行 JavaScript 代碼。
數(shù)據(jù)存儲-這是持久層。瀏覽器需要在硬盤上保存各種數(shù)據(jù),例如 Cookie。新的 HTML 規(guī)范 (HTML5) 定義了“網(wǎng)絡數(shù)據(jù)庫”,這是一個完整(但是輕便)的瀏覽器內(nèi)數(shù)據(jù)庫。

我們這里談到的瀏覽器:

目前使用的主流瀏覽器有五個:Internet Explorer、Firefox、Safari、Chrome 瀏覽器和 Opera。本文中以開放源代碼瀏覽器為例,即 Firefox、Chrome 瀏覽器和 Safari(部分開源)。根據(jù) StatCounter 瀏覽器統(tǒng)計數(shù)據(jù),目前(2011 年 8 月)Firefox、Safari 和 Chrome 瀏覽器的總市場占有率將近 60%。由此可見,如今開放源代碼瀏覽器在瀏覽器市場中占據(jù)了非常堅實的部分。

1.1下載與安裝
下載地址:http://www.google.cn/intl/zh-CN/chrome/browser/desktop/index.html

安裝:傻瓜式的安裝,一路點擊下一步。

2.瀏覽器加載Html頁面的過程
2.1 從輸入URL到頁面加載完成都發(fā)生了什么?

1.處理URL:輸入 URL 后的「回車」,這時瀏覽器會對 URL 進行檢查,首先判斷協(xié)議,如果是 http 就按照 Web 來處理,另外還會對這個 URL 進行安全檢查,然后直接調(diào)用瀏覽器內(nèi)核中的對應方法,比如 WebView 中的 loadUrl 方法。

2.發(fā)送HTTP請求:因為網(wǎng)絡的底層實現(xiàn)是和內(nèi)核相關的,所以這一部分需要針對不同平臺進行處理,從應用層角度看主要做兩件事情:通過 DNS 查詢 IP、通過 Socket 發(fā)送數(shù)據(jù),接下來就分別介紹這兩方面的內(nèi)容。

2.1 DNS查詢:Chrome瀏覽器在啟動的時候首先會去加載你本地的host文件,如果URL中的域名在host文件中設置的有對應的IP地址,就會直接將這個域名指向這個地址。如果host中沒有URL中輸入的域名(www.baidu.com)對應的IP地址,瀏覽器就會去訪問DNS服務器,向DNS服務器詢問這個域名(www.baidu.com)對應的IP地址。

2.2 通過Socket發(fā)送數(shù)據(jù):有了 IP 地址,就可以通過 Socket API 來發(fā)送數(shù)據(jù)了,這時可以選擇 TCP/IP 或 UDP 協(xié)議,HTTP 常用的是 TCP/IP 協(xié)議。Chrome此時就會使用TCP/IP傳輸協(xié)議,將URL中的信息通過HTTP協(xié)議發(fā)送到百度的服務器。

3.瀏覽器接受遠程服務器響應的數(shù)據(jù):遠程服務器(百度的服務器)一般會返回給瀏覽器一個HTML(字節(jié)碼數(shù)據(jù))。瀏覽器接受到數(shù)據(jù)之后就對這些字節(jié)碼數(shù)據(jù)以指定的編碼格式進行解碼。瀏覽器獲取編碼格式的途徑:

1)用戶設置,在瀏覽器中可以指定頁面編碼
2)HTTP 協(xié)議中
3)HTML頁面中 的 charset 屬性值

4.瀏覽器對HTML頁面進行渲染和布局:
1).瀏覽器開始載入html代碼,發(fā)現(xiàn)<head>標簽內(nèi)有一個<link>標簽引用外部CSS文件;
2).瀏覽器又發(fā)出CSS文件的請求,服務器返回這個CSS文件;
3).瀏覽器繼續(xù)載入html中<body>部分的代碼,并且CSS文件已經(jīng)拿到手了,可以開始渲染頁面了;
4).瀏覽器在代碼中發(fā)現(xiàn)一個<img>標簽引用了一張圖片,向服務器發(fā)出請求。此時瀏覽器不會等到圖片下載完,而是繼續(xù)渲染后面的代碼;
服務器返回圖片文件,由于圖片占用了一定面積,影響了后面段落的排布,因此瀏覽器需要回過頭來重新渲染這部分代碼;
5).瀏覽器發(fā)現(xiàn)了一個包含一行Javascript代碼的<script>標簽,趕快運行它;
6).Javascript腳本執(zhí)行了這條語句,它命令瀏覽器隱藏掉代碼中的某個<div> (style.display=”none”)。杯具啊,突然就少了這么一個元素,瀏覽器不得不重新渲染這部分代碼;
7).終于等到了</html>的到來,瀏覽器淚流滿面……
8).等等,還沒完,用戶點了一下界面中的“換膚”按鈕,Javascript讓瀏覽器換了一下<link>標簽的CSS路徑;
9).瀏覽器召集了在座的各位<div><span><ul><li>們,“大伙兒收拾收拾行李,咱得重新來過……”,瀏覽器向服務器請求了新的CSS文件,重新渲染頁面。
注:win10打開host文件的方法:在運行(win+R)中輸入:C:\Windows\System32\drivers\etc即可

2.2 JavaScript引擎

2.2.1 JavaScript引擎是什么?
“JavaScript引擎”通常被稱作一種 虛擬機?!疤摂M機”是指軟件驅(qū)動的給定的計算機系統(tǒng)的模擬器。有很多類型的虛擬機,它們根據(jù)自己在多大程度上精確地模擬或代替真實的物理機器來分類。

2.2.2 JavaScript引擎是干什么的?
JavaScript的基本工作就是將開發(fā)者寫的JavaScript代碼轉(zhuǎn)換成能被瀏覽器理解甚至能在應用程序上運用的最優(yōu)化的快捷代碼。比方說,當你寫了 var a = 1 + 1; 這樣一段代碼,JavaScript引擎做的事情就是看懂(解析)你這段代碼,并且將a的值變?yōu)?。

2.2.3 主要的JavaScript引擎有哪些?
WebKit的JavaScriptCore 和 Google 的 V8 引擎。

2.2.4 JavaScriptCore和V8引擎解析源代碼的過程
JavaScriptCore 執(zhí)行 一系列步驟 來解釋和優(yōu)化腳本:
1)首先它進行詞法分析,就是將源代碼分解成一系列具有明確含義的符號或字符串。
2) 然后用語法分析器分析這些符號,將其構(gòu)建成語法樹。
3)接著四個 JIT(Just-In-Time)進程開始參與進來,分析和執(zhí)行解析器所生成的字節(jié)碼。
簡單來說,JavaScript 引擎會加載你的源代碼,把它分解成字符串(又叫做分詞),再 把這些字符串轉(zhuǎn)換 成編譯器可以理解的字節(jié)碼,然后執(zhí)行這些字節(jié)碼。

Google 的 V8 引擎 是用 C++ 編寫的,它也能夠編譯并執(zhí)行 JavaScript 源代碼、處理內(nèi)存分配和垃圾回收。它被設計成由兩個編譯器組成,可以把源碼直接編譯成機器碼:

1) Full-codegen:輸出未優(yōu)化代碼的快速編譯器
2) Crankshaft: 輸出執(zhí)行效率高、優(yōu)化過的代碼的慢速編譯器
如果 Crankshaft 確定需要優(yōu)化的代碼是由 Full-codegen 生成的未優(yōu)化代碼,它就會取代 Full-codegen,這個過程叫做“crankshafting”。
一旦編譯過程中產(chǎn)生了機器代碼,引擎就會向瀏覽器暴露所有的數(shù)據(jù)類型、操作符、對象、在 ECMA 標準中指定的函數(shù)、或任何運行時需要使用的東西,NativeScript 就是如此。

3.Chrome瀏覽器的開發(fā)者工具面板介紹

3.1 Chrome瀏覽器開發(fā)者工具的打開方式:
1)功能鍵F12或者Ctrl+Shift+j或者Ctrl+Shift+j打開;
2)打開瀏覽器右上角用戶設置下拉菜單,選擇更多工具,再選擇開發(fā)者工具即可打開開發(fā)者工具。

3.2 開發(fā)者工具的工具欄中常用面板介紹

Elements:查找網(wǎng)頁源代碼HTML中的任一元素,手動修改任一元素的屬性和樣式且能實時在瀏覽器里面得到反饋。
Console:記錄開發(fā)者開發(fā)過程中的日志信息,且可以作為與JS進行交互的命令行Shell。

Sources: Sources功能面板是資源面板,他主要分為四個部分,四個部分并不是獨立的,他們互相關聯(lián),互動共同實現(xiàn)一個重要的功能:監(jiān)控js在執(zhí)行期的活動。簡單來說就是斷點啦。

Network:從發(fā)起網(wǎng)頁頁面請求Request后分析HTTP請求后得到的各個請求資源信息(包括狀態(tài)、資源類型、大小、所用時間等),可以根據(jù)這個進行網(wǎng)絡性能優(yōu)化。
Timeline:記錄并分析在網(wǎng)站的生命周期內(nèi)所發(fā)生的各類事件,以此可以提高網(wǎng)頁的運行時間的性能。
Profiles:如果你需要Timeline所能提供的更多信息時,可以嘗試一下Profiles,比如記錄JS CPU執(zhí)行時間細節(jié)、顯示JS對象和相關的DOM節(jié)點的內(nèi)存消耗、記錄內(nèi)存的分配細節(jié)。
Application:記錄網(wǎng)站加載的所有資源信息,包括存儲數(shù)據(jù)(Local Storage、Session Storage、IndexedDB、Web SQL、Cookies)、緩存數(shù)據(jù)、字體、圖片、腳本、樣式表等。
Security:判斷當前網(wǎng)頁是否安全。
Audits:對當前網(wǎng)頁進行網(wǎng)絡利用情況、網(wǎng)頁性能方面的診斷,并給出一些優(yōu)化建議。比如列出所有沒有用到的CSS文件等。

3.2.1 元素(Element)面板
Element面板打開方式:
1)打開開發(fā)者工具后選擇開發(fā)者工具面板中的Element頁簽;

2)打開瀏覽器之后,鼠標右鍵檢查 (火狐瀏覽器是” 審查元素”)

Element面板的常用功能:
1)實時編輯DOM節(jié)點
在Element面板的DOM樹視圖中.呈現(xiàn)出了當前頁面中的所有的DOM節(jié)點.鼠標雙擊任何DOM節(jié)點都可以修改其中的屬性值,修改完成之后按回車鍵瀏覽器會立即顯示出修改后的效果.
注意:這種及時的修改只是臨時的修改,只能做調(diào)試用,實際應用中往往是調(diào)試結(jié)束后再將正確的屬性值在本地代碼中修改.

2)實時編輯CSS樣式
在Element面板中也可以對當前頁面的DOM元素的樣式進行實時的修改,修改后元素的樣式立即生效.
實時修改某一DOM元素的樣式的操作步驟:
首先選中這個DOM元素.如果沒有打開開發(fā)者工具,可以在要修改的DOM元素上右鍵–>審查元素,然后選擇控制面板右側(cè)的Style即可看到當前DOM元素的所有CSS樣式,雙擊其中的CSS屬性值就可以修改,修改后馬上生效.如果已經(jīng)打開了開發(fā)者工具,可以通過先點擊開發(fā)者工具面板最左側(cè)的放大鏡,然后再去點擊頁面上要修改的DOM元素選中這個要調(diào)試的DOM元素.此時控制面板右側(cè)的Style中就呈現(xiàn)出了當前選中的DOM元素的CSS屬性雙擊屬性值即可修改.
注意:這種及時的修改只是臨時的修改,只能做調(diào)試用,實際應用中往往是調(diào)試結(jié)束后再將正確的屬性值在本地代碼中修改.

3)打開盒子模型,調(diào)試邊框參數(shù)
點擊右側(cè)的Computed頁簽可以看到當前選中的元素的盒子模型參數(shù),所有的值都是可以修改的.點擊不同的位置(top,bottom,left,right)就可以修改元素的padding,border,margin屬性值.也可以通過修改盒子模型中間的數(shù)據(jù)改變元素的width和height.修改的時候瀏覽器中的當前元素會響應地變化,同時在左側(cè)Element面板中會自動添加上響應的Stylt屬性值.當頁面上顯示的樣式符合要求之后,即可停止修改,然后將Element中生成的屬性值復制到代碼中,樣式即可永久修改.

3.2.2 控制臺(Console) 面板
1)查看腳本運行過程中的異常信息;
由于JavaScript屬于弱語言類型,語法要求不嚴謹.并且JavaScript是解釋型語言,在代碼中輸入中文的標點等錯誤也不會有提示,只有運行結(jié)束后才會拋出異常信息到控制臺.


如果想查看具體的異常信息,直接點擊右邊的異常信息控制臺將會把我們帶到程序中錯誤出現(xiàn)的具體位置:

2)打印日志信息;

上邊說到了簡單的調(diào)試可以使用alert方法將想要看到的信息顯示在彈窗中。但是alert存在弊端:阻斷程序運行,不能顯示對象的細節(jié)信息,彈出多個信息時必須點擊確定才能看到下一個彈窗的信息。這些問題使用console提供的打印日志的方法可以完美解決。
Console常用的打印日志的方法有:
A)console.log(“info”)顯示一般的基本日志信息,當要顯示的基本日志信息太多時,可以使用console.grop()方法將日志分組;
B)Console.warn(“info”)顯示帶有黃色小圖標的警告信息;
C)Console.error(“info”)顯示帶有紅色小圖標的錯誤信息;
Console打印日志的使用場景:
A)在代碼中使用console.log()打印日志信息:


B)直接在控制臺上使用console.log()打印信息:

C)清除控制臺中信息的方法:

直接在控制臺上輸出console.clear()方法人后回車即可清除控制臺上的信息。還有一種方法是直接點擊控制臺左上方的清除日志的按鈕清除日志信息。

3)運行JavaScript腳本

控制臺還有一個神奇的功能就是可以運行你輸入的JavaScript腳本,這一點非常實用。
實用場景一:快速驗證JavaScript中的方法。
將一個小數(shù)按照輸出,要求:只保留兩位小數(shù)。通過查JavaScript的API得知Number對象有一個toFixed方法可以指定小數(shù)位的長度,但是又沒有例子,最快的嘗試方法就是在控制臺上驗證:
console.log(new Number(“3.1415926”).toFixed(2));

實用場景二:控制臺中輸入JavaScript方法時有提示。

通過document獲取指定id的節(jié)點的方法是document.getElementById(“id”)但是因為MyEclipse,Eclipse中在寫JavaScript時可能沒提示,自己寫太痛苦而且還容易寫錯。這時,就可以在控制臺上通過方法提示來補全這個方法。


如上圖:我們不需要完整輸入方法名,根據(jù)提示使用鍵盤的上,下鍵選擇需要的方法然后回車即可。

D)Console面板中的全局搜索(快捷鍵Ctrl+Shift+F)
打開全局搜索,輸入關鍵字,能夠搜索到包含這個關鍵字的所有的文件。
應用場景:剛到一個公司,對公司的業(yè)務不熟。登錄頁面有幾千行代碼,我只想找到登錄的那個方法。這時,輸入登錄方法名就能搜索到登錄登錄方法所在的頁面。點擊進去就能夠定位到這個方法了。

3.2.3 資源(Source) 面板
Source資源面板中顯示加載當前頁面需要的所有資源。

在Source面板中可以找到當前瀏覽器加載的頁面,然后對其中的JavaScript腳本進行斷點調(diào)試。Chrome開發(fā)者工具使用中會具體說明。
3.2.4 網(wǎng)絡(NetWork) 面板
NetWork面板可以記錄頁面上的網(wǎng)絡請求的詳細信息,從發(fā)起網(wǎng)頁請求Request后分析HTTP請求后得到的各個請求資源信息(包括狀態(tài),資源信息,大小,所用時間,Request和Response等),可以根據(jù)這個進行網(wǎng)絡性能優(yōu)化。

1.Controls 控制Network的外觀和功能。
2.Filters 控制Requests Table具體顯示哪些內(nèi)容。
3.Overview 顯示獲取到資源的時間軸信息。
4.Requests Table 按資源獲取的前后順序顯示所有獲取到的資源信息,點擊資源名可以查看該資源的詳細信息。
5.Summary 顯示總的請求數(shù)、數(shù)據(jù)傳輸量、加載時間信息。

NetWork面板的Requests Table 包含著HTTP請求和響應的具體信息,是比較常用的一塊
?Name 資源名稱,點擊名稱可以查看資源的詳情情況,包括Headers、Preview、Response、Cookies、Timing。
?Status HTTP狀態(tài)碼。
?Type 請求的資源MIME類型。
?Initiator 標記請求是由哪個對象或進程發(fā)起的(請求源)。
?Parser: 請求由Chrome的HTML解析器時發(fā)起的。
?Redirect:請求是由HTTP頁面重定向發(fā)起的。
?Script:請求是由Script腳本發(fā)起的。
?Other:請求是由其他進程發(fā)起的,比如用戶點擊一個鏈接跳轉(zhuǎn)到另一個頁面或者在地址欄輸入URL地址。
?Size 從服務器下載的文件和請求的資源大小。如果是從緩存中取得的資源則該列會顯示(from cache)
?Time 請求或下載的時間,從發(fā)起Request到獲取到Response所用的總時間。
?Timeline 顯示所有網(wǎng)絡請求的可視化瀑布流(時間狀態(tài)軸),點擊時間軸,可以查看該請求的詳細信息,點擊列頭則可以根據(jù)指定的字段可以排序。

查看具體資源的詳情
通過點擊某個資源的Name可以查看該資源的詳細信息,根據(jù)選擇的資源類型顯示的信息也不太一樣,可能包括如下Tab信息:
?Headers 該資源的HTTP頭信息。
?Preview 根據(jù)你所選擇的資源類型(JSON、圖片、文本)顯示相應的預覽。
?Response 顯示HTTP的Response信息。
?Cookies 顯示資源HTTP的Request和Response過程中的Cookies信息。
?Timing 顯示資源在整個請求生命周期過程中各部分花費的時間。
針對上面4個Tab進行詳細講解一下各個功能:
① 查看資源HTTP頭信息
在Headers標簽里面可以看到HTTP Request URL、HTTP Method、Status Code、Remote Address等基本信息和詳細的Response Headers
、Request Headers以及Query String Parameters或者Form Data等信息。

預覽響應數(shù)據(jù)

③ 查看資源HTTP的Response信息
在Response標簽里面可根據(jù)選擇的資源類型(JSON、圖片、文本、JS、CSS)顯示相應資源的Response響應內(nèi)容。下圖顯示的是當選擇的資源是CSS格式時的響應內(nèi)容。

④ 查看資源Cookies信息
如果選擇的資源在Request和Response過程中存在Cookies信息,則Cookies標簽會自動顯示出來,在里面可以查看所有的Cookies信息。

4.Chrome開發(fā)者工具之斷點調(diào)試

4.1 JavaScript腳本斷點調(diào)試

第一步:打開開發(fā)者工具,按F12或者在瀏覽器頁面上右鍵選擇檢查。

第二步:在Source面板中找到需要調(diào)試的文件。

第三步:設置斷點。


第四步:觸發(fā)調(diào)試部分程序的運行,開始調(diào)試。

調(diào)試過程中常用的按鈕及快捷鍵:

跳到下一個斷點:點擊Sources面板右側(cè)的“三角按鈕”


快捷鍵:F8
Ctrl+\
跳到下一步(逐步跨方法):點擊Sources面板右側(cè)的第二個按鈕


快捷鍵:F10
Ctrl+’
跳進斷點處的方法中:點擊Sources面板右側(cè)第三個按鈕


快捷鍵:F11
Ctrl+;
跳出正在執(zhí)行的方法:點擊Sources面板右側(cè)第四個按鈕


快捷鍵:Shift+F11
Ctrl+Shift+;

禁用斷點:點擊Sources面板右側(cè)的第五個按鈕

暫停在捕獲到的異常處:點擊Sources面板右側(cè)的第六個按鈕,然后勾選Pause On Caught Exception

暫停在未捕獲的異常處:點擊Sources右側(cè)的第六個按鈕,不勾選Pause On Caught Exception.


Sources面板調(diào)試過程中快捷鍵預覽:

查看斷點處,獲取的數(shù)據(jù)的值:
將鼠標光標停留在變量上面即可,也可以將變量賦值到Console的控制臺上打印出來。

清除斷點:
在Source面板最右側(cè)面板中,找到Breakpoints打開,可以看到你打的斷點。在斷點列表出右鍵選擇Remove all breakpoints可以一次性刪除所有斷點。


4.2 XHR斷點調(diào)試

右側(cè)調(diào)試區(qū)有一個 XHR Breakpoints,點擊+ 并輸入 URL 包含的字符串即可監(jiān)聽該 URL 的 Ajax 請求,輸入內(nèi)容就相當于 URL 的過濾器。如果什么都不填,那么就監(jiān)聽所有 XHR 請求。一旦 XHR 調(diào)用觸發(fā)時就會在 request.send() 的地方中斷。

4.3 事件監(jiān)聽斷點

事件監(jiān)聽是對我們選定的是事件類型進行監(jiān)聽,當這個事件觸發(fā)的時候,程序就會在這個事件處停止。有助于我們快速找到某一個元素上綁定的事件。
應用場景:我們剛接手一個項目時,對業(yè)務不熟。想找到提交登錄事件對應的方法,但是發(fā)現(xiàn)頁面上登錄按鈕綁定事件寫的不是很明確,而且處理登錄業(yè)務的JavaScript腳本文件有幾百行,想找到這個按鈕很不容易。此時,我們就可以選定鼠標的點擊事件進行監(jiān)聽,當我們點擊登錄按鈕的時候控制臺Sources面板會自動將我們帶到登錄方法處。
事件監(jiān)聽斷點使用步驟(以查找天貓首頁登錄方法為例):

1.首先打開京東登錄頁面找到登錄按鈕;

2.在登錄按鈕上右鍵屬性==》檢查 打開開發(fā)者工具,然后打開Sources面板

3.打開Sources面板右側(cè)的Event Listener Breakpoints 找到Mouse及鼠標事件下邊的click然后勾選上。

  1. 點擊登錄按鈕,觸發(fā)鼠標的點擊事件,發(fā)現(xiàn)程序中斷在JavaScript文件中,點擊面板下方的 “{}” 將代碼格式化一下,此時就找到了登錄按鈕觸發(fā)的點擊事件了。

此時就可以一步一步的像下跟,知道跟到天貓的登錄方法了。

5 其他設置

5.1 設置開發(fā)者工具的位置:

Chrome剛安裝好時,打開開發(fā)者工具,開發(fā)者工具默認在瀏覽器的左半邊。

可以通過開發(fā)者工具面板右上角的設置開發(fā)者工具在瀏覽器中出現(xiàn)的位置。

視圖1:開發(fā)者工具以一個獨立的窗口存在;視圖2:在瀏覽器下方顯示;視圖3:在瀏覽器右半邊顯示。

5.2 清除瀏覽器緩存的方法:

瀏覽器緩存(Browser Caching)是為了節(jié)約網(wǎng)絡的資源加速瀏覽,瀏覽器在用戶磁盤上對最近請求過的文檔進行存儲,當訪問者再次請求這個頁面時,瀏覽器就可以從本地磁盤顯示文檔,這樣就可以加速頁面的閱覽。但是,對開發(fā)人員來說,我們修改了JavaScript腳本之后需要立即看到修改的效果,所以需要清除緩存,清除緩存常用的方法有:

1.Ctrl + F5

F5通常只是刷新本地緩存;Ctrl+F5可以把INTERNET臨時文件夾的文件刪除再重新從服務器下載,也就是徹底刷新頁面了。

2.開發(fā)者工具打開之后,快速清除緩存的方法:

開發(fā)者工具打開之后,瀏覽器刷新圖標上右鍵會出現(xiàn)清空緩存并硬性重新加載。這一方法能夠在開發(fā)者工具打開時快速清理緩存。


3.Ctrl + Shift + Del 快捷鍵清除緩存。
選中地址欄中的URL


按快捷鍵:Ctrl + Shit + Del 會彈出一個清除瀏覽數(shù)據(jù)的彈窗,選擇要清理的數(shù)據(jù)項之后,點擊清除瀏覽數(shù)據(jù)即可。

5.3 禁用頁面的JavaScript腳本;
應用場景:在開發(fā)互聯(lián)網(wǎng)電商項目時,需要一些商品圖片,于是就去京東找到一個商品打開商品圖片之后,想復制或者將這個圖片另存為,此時,發(fā)現(xiàn)右鍵后什么都沒有。

原因是,京東在圖片上通過JavaScript腳本禁用了鼠標右鍵點擊事件。此時,我們可以通過禁用當前頁面的JavaScript事件,通過鼠標右鍵保存圖片。

禁用網(wǎng)頁JavaScript事件的方法:

1)開發(fā)者工具==》Settings

2)勾選Debugger下的Disable JavaScript 復選框。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Chrome調(diào)試工具奇淫技
Chrome谷歌瀏覽器F12開發(fā)者工具使用詳解,修改、下載網(wǎng)頁中的內(nèi)容,調(diào)試js,抓包等
Chrome開發(fā)者工具不完全指南(二、進階篇)
簡便的CSS熱更新——使用chrome開發(fā)者工具
JavaScript 逆向爬蟲中的瀏覽器調(diào)試常見技巧
Web 開發(fā)者新神器:能運行游戲引擎的火狐 Quantum 瀏覽器
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服