js實現(xiàn)延遲加載的幾種方法?
1.使用setTimeout延遲方法的加載時間
延遲加載js代碼,給網(wǎng)頁加載留出更多時間
<script type="text/javascript" >
function A(){
$.post("/lord/login",{name:username,pwd:password},function(){
alert("Hello");
});
}
$(function (){
setTimeout('A()', 1000); //延遲1秒
})
</script>
2.讓js最后加載
例如引入外部js腳本文件時,如果放入html的head中,則頁面加載前該js腳本就會被加載入頁面,而放入body中,則會按照頁面從上倒下的加載順序來運行JavaScript的代碼~~~ 所以我們可以把js外部引入的文件放到頁面底部,來讓js最后引入,從而加快頁面加載速度
3.上述方法2也會偶爾讓你收到Google頁面速度測試工具的“延遲加載javascript”警告。所以這里的解決方案將是來自Google幫助頁面的推薦方案。
//這些代碼應被放置在</body>標簽前(接近HTML文件底部)
<script type="text/javascript">
function downloadJSAtOnload() {
var element = document.createElement("script");
element.src = "defer.js";
document.body.appendChild(element);
}
if (window.addEventListener)
window.addEventListener("load", downloadJSAtOnload, false);
else if (window.attachEvent)
window.attachEvent("onload", downloadJSAtOnload);
else window.onload = downloadJSAtOnload;
</script>
這段代碼意思是等到整個文檔加載完后,再加載外部文件“defer.js”。
使用此段代碼的步驟:
1).復制上面代碼
2).粘貼代碼到HTML的標簽前 (靠近HTML文件底部)
3).修改“defer.js”為你的外部JS文件名
4).確保你文件路徑是正確的。例如:如果你僅輸入“defer.js”,那么“defer.js”文件一定與HTML文件在同一文件夾下。