自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

不用再擔(dān)心JS文件限制你的速度

開發(fā) 前端
有的人為了給網(wǎng)站增加炫目效果,往往會使用一些JS效果代碼,這在上個世紀(jì)似乎還很流行,對于現(xiàn)在來說,最好在用戶體驗確實需要的情況下,使用這些東西。

經(jīng)常聽到客戶問這樣的問題:你們幫我看看我的網(wǎng)站怎么打開那么慢啊,是不是中毒了?

然后我們就去測試他的網(wǎng)站,發(fā)現(xiàn)問題簡單的很:每個網(wǎng)頁的開頭有著不計其數(shù)的外聯(lián)文件。樣式表還好,最多的不外乎幾十K??膳碌氖荍S文件,這些個企業(yè)的負(fù)責(zé)人都不是IT專業(yè)人員,兼職管理企業(yè)的網(wǎng)站,喜歡迎合領(lǐng)導(dǎo)搞些特效什么的,又不知道優(yōu)化。什么JQUERY,特效,驗證等等,全都羅列在head里,林林總總快一千k了。

今天說說給他們做優(yōu)化的那些簡單的手段吧。

一、給JS文件減肥。

有的人為了給網(wǎng)站增加炫目效果,往往會使用一些JS效果代碼,這在上個世紀(jì)似乎還很流行,對于現(xiàn)在來說,最好在用戶體驗確實需要的情況下,使用這些東西。至于希望給自己的JS文件減肥的童鞋,網(wǎng)上的工具里有很多,在百度一搜就會有應(yīng)用,功能很全。把一個已經(jīng)完善的JS文件進(jìn)行壓縮是主流網(wǎng)站的一個慣性動作,因為壓縮量確實很可觀。以下是幾個比較好的壓縮工具:

YUI壓縮工具 (http://developer.yahoo.com/yui/compressor/)

Dean Edwards Packer (http://dean.edwards.name/packer/)

JSMin (http://crockford.com/JavaScript/jsmin)

二、盡量減少DOM訪問

使用JavaScript訪問DOM元素很容易,代碼更容易閱讀,但是速度很慢。下面介紹幾個要點:限制使用JavaScript來修飾網(wǎng)頁布局,把針對訪問元素的引用緩存起來。有時,當(dāng)你的網(wǎng)站依賴大量的DOM改動時,就應(yīng)該考慮限制你的標(biāo)記。這是改用HTML5、舍棄那些原來的XHTML和HTML4的一個充分理由。

三、使用適當(dāng)?shù)腃DN

現(xiàn)在許多網(wǎng)頁使用內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)。它可以改進(jìn)你的緩存機(jī)制,因為每個人都可以使用它。它還能為你節(jié)省一些帶寬。你很容易使用ping檢測或使用Firebug調(diào)試那些服務(wù)器,以便搞清可以從哪些方面加快數(shù)據(jù)的速度。選擇CDN時,要照顧到你網(wǎng)站那些訪客的位置。記得盡可能使用公共存儲庫。

四、把不著急用的JS文件放到頁面的底部

當(dāng)更多地考慮用戶對網(wǎng)站的速度體驗時,在頁面底部裝入JS文件是一個非常好的做法。易用性和用戶放在首位,JavaScript放在末位。對于追求技術(shù)的很多前端人員來說,這似乎很難接受,但也應(yīng)該有所準(zhǔn)備,有些用戶會禁用JavaScript。

五、在頭部以異步方式裝入JS

為了統(tǒng)計網(wǎng)站的各種信息,我們通常會借助網(wǎng)上提供的免費(fèi)統(tǒng)計功能,比如cnzz的統(tǒng)計,比如google分析,比如百度統(tǒng)計,關(guān)鍵的是,好多統(tǒng)計為了保證統(tǒng)計效果,可能會建議用戶將統(tǒng)計代碼放在頁面的頭部。如果用戶選擇這么做,可能會在統(tǒng)計代碼請求數(shù)據(jù)不穩(wěn)定時給他的網(wǎng)站用戶帶來非常不好的體驗。不過,目前大部分統(tǒng)計服務(wù)都允許你以異步方式載入放在頭部的JS文件,在很大程度上解決了這一問題。

六、把你的JavaScript打包成PNG文件

這個辦法是最近在網(wǎng)上看到老外的一種做法,思維很特別,還沒有嘗試過,有興趣的朋友可以嘗試一下。具體是這樣:把你的JS和CSS添加到圖片的末尾,然后用CSS來裁切,通過一次HTTP請求來獲得應(yīng)用程序中所需的所有信息,它把你的JavaScript/css數(shù)據(jù)打包成PNG文件,然后你還可以拆包,只要使用畫布API的getImageData()。這種方法效率非常高,可以在不縮小數(shù)據(jù)的情況下,多壓縮35%左右。

原文鏈接:http://www.cnblogs.com/ilian/archive/2012/06/20/js-quick-load.html

責(zé)任編輯:張偉 來源: 愛蓮學(xué)堂的博客
相關(guān)推薦

2020-06-15 08:03:17

大文件OOM內(nèi)存

2014-01-09 14:52:47

創(chuàng)意開源

2013-09-05 11:18:58

.NetWeb

2021-12-21 09:05:46

命令Linux敲錯

2011-03-04 15:19:34

Vsftpd

2011-02-24 09:42:17

限制傳輸速度

2020-04-13 08:33:39

高并發(fā)秒殺系統(tǒng)

2021-06-08 07:48:26

數(shù)據(jù) Python開發(fā)

2015-05-29 09:01:48

2022-03-02 15:10:31

DateJavaScript前端

2018-06-11 20:37:39

華為雙鴨山市人民醫(yī)院醫(yī)療信息系統(tǒng)平臺

2020-04-10 09:55:28

Git 工具黑魔法

2019-10-18 15:02:31

Python軟件女朋友

2009-11-18 13:53:10

Android

2022-09-14 08:02:25

加密算法Bcryp

2017-06-07 12:33:46

智慧工業(yè)智慧醫(yī)療人工智能

2021-08-13 22:38:36

大數(shù)據(jù)互聯(lián)網(wǎng)技術(shù)

2010-09-02 14:17:58

無線路由掉線問題

2010-09-06 10:26:31

無線路由掉線問題
點贊
收藏

51CTO技術(shù)棧公眾號