GoogleChrome瀏覽器調試功能介紹_第1頁
GoogleChrome瀏覽器調試功能介紹_第2頁
GoogleChrome瀏覽器調試功能介紹_第3頁
GoogleChrome瀏覽器調試功能介紹_第4頁
GoogleChrome瀏覽器調試功能介紹_第5頁
已閱讀5頁,還剩22頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、GoogleChrome瀏覽器調試功能介紹Chrome瀏覽器得益于其優秀的V8解釋器,javascript執行速度和內存占有率表現非常優秀。對于html+css+javascript前臺技術的學習或者開發,瀏覽器developer tool的使用時必不可少的,也能極大的提高學習或者開發效率。本文根據版本 23.0.1271.10。在window下,開啟developer tool的快捷鍵為F12。1 Developer tool功能結構Developer tool的功能欄有8個,分別是標簽、資源、網絡、源碼、時間軸、性能、監察和顯示(命令行)。2 Element panel2.1 Elemen

2、t控制面板基本功能Element控制面板能夠讓你查看所有的DOM tree中的內容,可以根據html內容找到頁面中的元素或者根據頁面中的定位標簽,同時可以改變DOM的內容。由javascript代碼產生的標簽,也只能通過這種方式查看了(在你的IDE中無法看到)。Element控制面板如上圖所示,我選中標簽之后,在頁面中顯示的對應的元素就會選中。如果,我現在要定位百度一下這個按鈕,我可以通過左下角的放大鏡,在頁面中選中百度一下,DOM中也會把對應的標簽給你找出來。這個功能在調試時絕對是利器。最下面顯示的是現在選中標簽在DOM中的層次關系。選元素找標簽功能我們也可以對里面的內容進行臨時性修改,如剛

3、才找到的百度一下標簽中的value改成“調試一下”后馬上在頁面中相應顯示。2.2 右側功能欄2.2.1 style查看使用css時,存在著樣式覆蓋等問題,有的時候顯示的樣式可能出乎你的意料,或者對元素的大小位置(特別是窗口)的查看。同時,我們也可以在這里進行臨時修改,在頁面中反應(真正的所見即所得,不是別的IDE所能替代的)。修改樣式或大小2.2.2 標簽注冊事件查看如果你想知道“百度一下”這個按鈕注冊了哪些功能,或者鼠標點擊時執行了哪個javascript函數,就可以通過這個功能實現了。選中百度一下標簽,定位keydown事件,找到對應的執行函數2.2.3 查找功能Ctrl+F可以調出查找,

4、查找你想要的內容,非常實用。3 資源控制面板資源控制面板包括了這個頁面中下載下來的所有的資源,同時也包括本地的cookie,還有html5中local storage等高級功能。資源查看面板4 網絡控制面板網絡控制面板在兩個方面還是非常還用的,一個是發現圖片(css、js等)加載不了,可以通過network查看它請求的位置。第二個,是調試ajax時,可以查看它的請求和獲取。如百度輸入框中,輸入關鍵字后會自動顯示熱門內容,這顯然是一個ajax的使用。網絡加載顯示查看http請求和獲得的內容5 源碼控制面板(js調試)Javascript的調試,基本上是通過源碼控制面板和命令行配合進行的。5.1

5、Beautiful javascript網上的js一般是壓縮過的,閱讀壓縮過的javascript肯定是不是人能進行的,更別說添加斷點了。在 Scripts 面板下面有個 Pretty print 按鈕(這種符號 ), 點擊會將壓縮 js 文件格式化縮進規整的文件, 這時候在設定斷點可讀性就大大提高了。調整前調整后5.2 代碼出錯定位1 <!DOCTYPE html PUBLIC "-/W3C/DTD XHTML 1.1/EN" "/TR/xhtml11/DTD/xhtml11.dtd"> 

6、2 3 <htmlxmlns="/1999/xhtml"> 4 5 <head> 6 7 <title>javascript add</title>8 9 <script type="text/javascript">10 11 var div=document.getElementByd("a");12&

7、#160;13function calSum()14 15 var a=parseInt(document.getElementById("num1").value);16 17var b=parseInt(document.getElementById("num2").value);18 19document.getElementById("num3").value=(a+b);20 21 22 23 </script

8、>24 25 </head>26 27<body>28 29 <input type="text" id="num1"/>add<input type="text" id="num2"/>30 31<input type="button" id="btnCal" onclick="

9、;calum()" value="equal"/><input type="text"id="num3"/>32 33 </body>34 35 </html>上面的代碼中,紅色標記部分顯然是錯誤的,在IDE中有些錯誤是檢查不出來的(特別是跟瀏覽器有關的部分)。加載該頁面后,可以在顯示欄看到報錯信息,然后直接定位至出錯點。Javascript錯誤位置定位5.3 添加斷點及單步5.3.1 斷點中斷可以通過單擊左側側添加斷點,并

10、在右側顯示。也可以通過watch expression添加查看的變量。我們添加了一個斷點,如果在頁面上的操作執行到斷點處,就會在斷點處終止。然后,我們可以通過右側最上面的按鈕調試,與VS等IDE的調試非常相近。Call stack是顯示函數的調用棧,在調試大規模的javascript程序是非常有用。單步調試5.3.2 頁面中斷調試除了給設定常規斷點外, 還可以在某一特定事件發生時中斷(不針對元素) , 在 Scripts 面板右側, 有個 Event Listener Breakpoints, 這里列出了支持的所有事件, 不僅 click, keyup 等事件, 還支持 Timer(在 set

11、Timeout setInterval 處理函數開始執行時中斷), onload, scroll 等事件。6 顯示行(命令行)命令行對于我們這種菜鳥有一個非常有用的地方,對于javascript提供的API或者API的功能不是非常熟悉。這個時候命令行就成為我們試驗最好的地方。如,我們想查看document下面有哪些函數,我們就可以在命令行中輸入,然后選中并嘗試。對于jquery等開源框架的學習,這種方式也非常高效,學代碼還是得跑起來才行。我們可以在命令行里面直接改變內存中的內容,對于小函數我就可以用這樣的方式直接替換。我們按enter是對輸入的內容運行,如果要換行需要按shift+enter。

12、在這里面,我們直接在命令行里面里面講calSum函數覆蓋掉,a+b換成了a*b。運行結果如下所示。命令行使用運行結果7 性能查看控制面板(profiles)這個控制面板允許我們查看函數運行時CPU占有率,還有內存占有率。這能夠幫助我們優化代碼,查看代碼性能(內存還能查看閉包泄露等)。按start可以分析,現在的內存占有率。進行操作后,再得到第二份內存分析報告,這樣我們就能通過內存變化來進行分析了。在底欄,還有對比、總結等選項。怎樣打開Chrome的開發者工具?你可以直接在頁面上點擊右鍵,然后選擇審查元素:或者在Chrome的工具中找到:或者,你直接記住這個快捷方式: Ctrl+Shift+I

13、(或者Ctrl+Shift+J直接打開控制臺),或者直接按F12。打開的開發者工具就長下面的樣子:不過我一般習慣與點左下角的那個按鈕,將開發者工具彈出作為一個獨立的窗口:下面來分別說下每個Tab的作用。Elements標簽頁這個就是查看、編輯頁面上的元素,包括HTML和CSS:左側就是對頁面HTML結構的查看與編輯,你可以直接在某個元素上雙擊修改元素的屬性,或者你點右鍵選"Edit as Html"直接對元素的HTML進行編輯,或者刪除某個元素,所有的修改都會即時在頁面上得到呈現。(注:看到上面右鍵菜單的最后一個選項"審查元素"了么?這是不是說明這個開發

14、者工具的頁面也是HTML來的呢?你點一下就知道了哦,嘿嘿)你還可以對某個元素進行監聽,在JS對元素的屬性或者HTML進行修改的時候,直接觸發斷點,跳轉到對改元素進行修改的JS代碼處:Elements標簽頁的右側可以對元素的CSS進行查看與編輯修改:你還可以通過這里看到各CSS選擇器設置的CSS值的覆蓋情況。下面的Metrics可以看到元素占的空間情況(寬、高、Padding、Margin神馬的):注意到上面的Properties沒有?這個很有用哦,可以讓你看到元素具有的方法與屬性,比查API手冊要方便得多哦(要注意某些方法和屬性在IE、FireFox等其他瀏覽器下面的支持情況哦)。Resour

15、ces標簽頁Resources標簽頁可以查看到請求的資源情況,包括CSS、JS、圖片等的內容,同時還可以查看到存儲相關的如Cookies、HTML5的Database和LocalStore等,你可以對存儲的內容編輯和刪除。這里的CSS文件有一個好玩的特性,你可以直接修改CSS文件,并且修改即時生效哦:Network標簽頁Network標簽頁對于分析網站請求的網絡情況、查看某一請求的請求頭和響應頭還有響應內容很有用,特別是在查看Ajax類請求的時候,非常有幫助。注意是在你打開Chrome開發者工具后發起的請求,才會在這里顯示的哦。點擊左側某一個具體去請求URL,可以看到該請求的詳細HTTP請求情

16、況:我們可以在這里看到HTTP請求頭、HTTP響應頭、HTTP返回的內容等信息,對于開發、調試,都是很有用的。Scripts標簽頁很明顯,這個標簽頁就是查看JS文件、調試JS代碼的,直接看下圖的說明:還有你可以打開Javascript控制臺,做一些其他的查看或者修改:你甚至還可以為某一XHR請求或者某一事件設置斷點:Timeline標簽頁注意這個Timeline的標簽頁不是指網絡請求的時間響應情況哦(這個在Network標簽頁里查看),這個Timeline指的JS執行時間、頁面元素渲染時間:點擊底部的Record就可以開始錄制頁面上執行的內容。(這個不熟悉,請參考文末鏈接)Profiles標簽

17、頁這個主要是做性能優化的,包括查看CPU執行時間與內存占用:這個也不熟悉,不多說,還是請參考文末鏈接吧。Audits標簽頁這個對于優化前端頁面、加速網頁加載速度很有用哦(相當與Yslow):點擊run按鈕,就可以開始分析頁面,分析完了就可以看到分析結果了:它甚至可以分析出頁面上樣式表中有哪些CSS是沒有被使用的哦:Console標簽頁就是Javascript控制臺了:這個除了查看錯誤信息、打印調試信息(console.log())、寫一些測試腳本以外,還可以當作Javascript API查看用。例如我想查看console都有哪些方法和屬性,我可以直接在Console中輸入"console"并執行:怎么樣

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論