2014-10-09 47 views
4

我試圖加載一個頁面(位於同一個域)到div,使用加載函數通過使用以下代碼:jquery加載到一個div是如此緩慢,以加載一個頁面在ifram

$(document).ready(function() { 
     $("#webContent").load(url); 
    }); 

它的加載頁面,但它太慢了。它會逐個加載頁面的每個元素,因爲我可以在螢火蟲中看到它。

但如果我想加載一個iframe中的同一頁面,那麼它的加載速度如此之快。我認爲它的加載aysc。

任何人都可以請解釋區別和解決方案下載到一個div。我不想使用iframe。

最好的問候

回答

1

那麼,你有什麼嘗試?這:

$(document).ready(function() { 
    $("#webContent").load(url); 
}); 

而這,對嗎?

<iframe src="http://example.com"></iframe> 

爲什麼JavaScript解決方案更慢,你問?

iframe在html解析到iframe所在的位置後開始加載。

按照jQuery documentation

代碼包含在$(文件)。就緒()將只一次 頁文檔對象模型(DOM)準備的JavaScript代碼來執行運行。

答案是,在這種情況下,您不能使JavaScript解決方案更快。

有一個小測試,如果你想讓它表明,有超過阿賈克斯沒有IFRAME有關的速度獎金:

代碼第一次測試案例:

$(document).ready(function() { 
    $("#webContent").load(url); 
}); 

代碼的第二次測試案例:

$(document).ready(function() { 
    $("#webContent").html('<iframe src="' + url + '"></iframe>'); 
}); 

加載頁面所需的時間在兩種情況下大致相同。

+0

感謝您的詳細解答。 – ctekk 2017-11-20 13:34:44

相關問題