對于本文,作為一個Web開發(fā)人員,除了上面的原因以外,與我們開發(fā)相關(guān)的,就是Chrome的開發(fā)者工具。而本文,就是要詳細(xì)說說Chrome的開發(fā)者工具,說說我為什么認(rèn)為它比Firebug要好用。
怎樣打開Chrome的開發(fā)者工具?
你可以直接在頁面上點擊右鍵,然后選擇審查元素:
或者在Chrome的工具中找到:
或者,你直接記住這個快捷方式: Ctrl+Shift+I (或者Ctrl+Shift+J直接打開控制臺),或者直接按F12。
打開的開發(fā)者工具就長下面的樣子:
不過我一般習(xí)慣與點左下角的那個按鈕,將開發(fā)者工具彈出作為一個獨立的窗口:
下面來分別說下每個Tab的作用。
Elements標(biāo)簽頁
這個就是查看、編輯頁面上的元素,包括HTML和CSS:
左側(cè)就是對頁面HTML結(jié)構(gòu)的查看與編輯,你可以直接在某個元素上雙擊修改元素的屬性,或者你點右鍵選"Edit as Html"直接對元素的HTML進(jìn)行編輯,或者刪除某個元素,所有的修改都會即時在頁面上得到呈現(xiàn)。(注:看到上面右鍵菜單的最后一個選項"審查元素"了么?這是不是說明這個開發(fā)者工具的頁面也是HTML來的呢?你點一下就知道了哦,嘿嘿)
你還可以對某個元素進(jìn)行監(jiān)聽,在JS對元素的屬性或者HTML進(jìn)行修改的時候,直接觸發(fā)斷點,跳轉(zhuǎn)到對改元素進(jìn)行修改的JS代碼處:
Elements標(biāo)簽頁的右側(cè)可以對元素的CSS進(jìn)行查看與編輯修改:
你還可以通過這里看到各CSS選擇器設(shè)置的CSS值的覆蓋情況。
下面的Metrics可以看到元素占的空間情況(寬、高、Padding、Margin神馬的):
注意到上面的Properties沒有?這個很有用哦,可以讓你看到元素具有的方法與屬性,比查API手冊要方便得多哦(要注意某些方法和屬性在IE、FireFox等其他瀏覽器下面的支持情況哦)。
Resources標(biāo)簽頁
Resources標(biāo)簽頁可以查看到請求的資源情況,包括CSS、JS、圖片等的內(nèi)容,同時還可以查看到存儲相關(guān)的如Cookies、HTML5的Database和LocalStore等,你可以對存儲的內(nèi)容編輯和刪除。
這里的CSS文件有一個好玩的特性,你可以直接修改CSS文件,并且修改即時生效哦:
Network標(biāo)簽頁
Network標(biāo)簽頁對于分析網(wǎng)站請求的網(wǎng)絡(luò)情況、查看某一請求的請求頭和響應(yīng)頭還有響應(yīng)內(nèi)容很有用,特別是在查看Ajax類請求的時候,非常有幫助。注意是在你打開Chrome開發(fā)者工具后發(fā)起的請求,才會在這里顯示的哦。
點擊左側(cè)某一個具體去請求URL,可以看到該請求的詳細(xì)HTTP請求情況:
我們可以在這里看到HTTP請求頭、HTTP響應(yīng)頭、HTTP返回的內(nèi)容等信息,對于開發(fā)、調(diào)試,都是很有用的。
Scripts標(biāo)簽頁
很明顯,這個標(biāo)簽頁就是查看JS文件、調(diào)試JS代碼的,直接看下圖的說明:
還有你可以打開Javascript控制臺,做一些其他的查看或者修改:
你甚至還可以為某一XHR請求或者某一事件設(shè)置斷點:
Timeline標(biāo)簽頁
注意這個Timeline的標(biāo)簽頁不是指網(wǎng)絡(luò)請求的時間響應(yīng)情況哦(這個在Network標(biāo)簽頁里查看),這個Timeline指的JS執(zhí)行時間、頁面元素渲染時間:
點擊底部的Record就可以開始錄制頁面上執(zhí)行的內(nèi)容。(這個不熟悉,請參考文末鏈接)
Profiles標(biāo)簽頁
這個主要是做性能優(yōu)化的,包括查看CPU執(zhí)行時間與內(nèi)存占用:
這個也不熟悉,不多說,還是請參考文末鏈接吧。
Audits標(biāo)簽頁
這個對于優(yōu)化前端頁面、加速網(wǎng)頁加載速度很有用哦(相當(dāng)與Yslow):
點擊run按鈕,就可以開始分析頁面,分析完了就可以看到分析結(jié)果了:
它甚至可以分析出頁面上樣式表中有哪些CSS是沒有被使用的哦:
Console標(biāo)簽頁
就是Javascript控制臺了:
這個除了查看錯誤信息、打印調(diào)試信息(console.log())、寫一些測試腳本以外,還可以當(dāng)作Javascript API查看用。
例如我想查看console都有哪些方法和屬性,我可以直接在Console中輸入"console"并執(zhí)行:
怎么樣,一目了然了吧 ?再例如我想查看日期函數(shù)都有哪些方法:
(注:注意在這里看到的某些方法和屬性是ES5新增的,記得兼容其他瀏覽器的支持情況哦)
結(jié)語
Google Chrome除了簡潔、快速,現(xiàn)在的Chrome的插件也非常的豐富了。而對于web開發(fā)者來說,Chrome對于HTML5、CSS3等一些新標(biāo)準(zhǔn)的支持也是比較完善的,而且Chrome的開發(fā)者工具我個人認(rèn)為真的非常好用,這就是為什么我向web開發(fā)者推薦使用Chrome的原因。