chrome瀏覽器為什么比一般的瀏覽器快呢?原因是chrome瀏覽器給全部頁面都弄了預(yù)加載功能。
目前可能還是有少部分人在使用的,就是InstantClick,它相當(dāng)于一個(gè)JS庫,運(yùn)行的原理類似預(yù)加載
利用mouseover、mousedown、mouseout執(zhí)行整個(gè)過程,運(yùn)行原理 當(dāng)鼠標(biāo)移到鏈接上時(shí),就已經(jīng)開始加載頁面了,從鼠標(biāo)懸停該鏈接到點(diǎn)擊鏈接這中間有那么幾百毫秒的間隔,此時(shí)頁面已經(jīng)加載得差不多,那么在真正打開頁面時(shí)就等于直接顯示,速度會(huì)非常快。所以這不單純是Ajax,而是pushState+Ajax,即是PJAX,類似于整個(gè)頁面的Ajax和真實(shí)的Ajax有區(qū)別。
下載本文附件將里面的兩個(gè)js放在主題目錄的js文件夾,之后可以在footer在body標(biāo)簽之前引用,引用代碼.
- scripttype=textjavascriptsrc=?phpbloginfotemplate_directory?jsinstantclick.min.jsdatanoinstant
- script
- scriptdatanoinstant
- InstantClick.init;
- script
然后就大功告成了,點(diǎn)擊打開頁面,你會(huì)發(fā)現(xiàn)頂部還有一個(gè)加載進(jìn)度條,可以通過CSS來修改其樣式。
這個(gè)效果有時(shí)會(huì)與一些Ajax效果沖突,比如評(píng)論Ajax,因?yàn)镮ns 網(wǎng)站模板 tantClick是針對(duì)body的,當(dāng)然評(píng)論模板會(huì)包含在內(nèi),所以當(dāng)你不希望某一區(qū)域使用InstantClick效果時(shí),可以用divdatanoinstantdiv這個(gè)聲明來包含該區(qū)域,在datanoinstant區(qū)域內(nèi)的點(diǎn)擊事件就都不會(huì)觸發(fā)預(yù)加載,如此一來就可以做到比較好的兼容效果了。 。
新聞熱點(diǎn)
疑難解答
圖片精選