回到頂部

高性能javascript編程筆記

時間:4年前   作者:lishan   瀏覽:181   [站內原創,轉載請注明出處]

標簽: JavaScript  

界面繪制的時候,每次遇到<script>標簽,頁面必須停下來等待代碼下載(如果是外部的)并執行,然后再繼續處理頁面其他部分:下面幾個方法可以減少javascript對渲染頁面的等待時間。

(1)將所有<script>標簽放置在頁面的底部,緊靠body關閉標簽</body>的上方。此法可以保證頁面在腳本運行之前完成解析

(2)將腳本成組打包。頁面的<script>標簽越少,頁面的加載速度就越快,響應也更加迅速。不論外部腳本文件還是內聯代碼都是如此.

(3)有幾種方法可以使用非阻塞方式下載JavaScript:
1.為<script>標簽添加defer屬性(只適用于Internet Explorer和Firefox 3.5以上版本)

比如:<script type="text/javascript" src="80iter.js" defer></script>
2.動態創建<script>元素,用它下載并執行代碼


var script = document.createElement ("script");
script.type = "text/javascript";
script.src = "80iter.js";
document.getElementsByTagName_r("head")[0].appendChild(script);




3.用XHR對象下載代碼,并注入到頁面中



var xhr = new XMLHttpRequest();
xhr.open("get", "80iter.js", true);
xhr.onreadystatechange = function(){
 if (xhr.readyState == 4){
 if (xhr.status >= 200 && xhr.status < 300 || xhr.status == 304){
 var script = document.createElement ("script");
 script.type = "text/javascript";
 script.text = xhr.responseText;
 document.body.appendChild(script);
 }
 }
};
xhr.send(null);


注意:這個方法不能跨域

龐順龍最后編輯于:4年前

內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。

評論努力加載中...
暫無評論
暫無評論

手機掃碼閱讀

熱門相關

加載中...
關于我們   聯系我們   申請友鏈   贊助記錄   站點地圖
? 2014 - 2017 www.1255315.live All Rights Reserved. 京ICP備14042174號-1
本站遵循 CC BY 4.0 協議,轉載請注明出處 。
辽宁十一选五走实图 秒速快3预测计划 云南11选五今天开奖号 网上配资炒股平台 江苏快3计划app 广西十一选5网站 比较好用的股票分析软件 云南11选五5开奖结果前三组 联创电子股票股吧 天津体彩十一选五走势图定牛 国内股票配资平台排名