2017-10-05 95 views
0

我有動態內容的iframe中,需要一個頁面上顯示,我希望它儘可能快地顯現。但是,在加載iframe的內容和在主頁上調整iframe的大小之間似乎存在一些滯後。目前,iframe的初始尺寸是height = 0和width = 100%,這樣當內容加載到iframe時,iframe-resizer會自動將其調整到正確的高度。Google Analytics(分析)跟蹤代碼導致Iframe-Resizer變慢?

然而,我注意到,如果在iframe中自動播放視頻,我可以聽到聲音,只要在iframe前一分鐘,將得到調整。在檢查瀏覽器控制檯時,我會看到iframe-resizer無響應的警告消息,但一分鐘左右後,iframe會調整大小並顯示內容。

我有一個谷歌分析的iframe內容中跟蹤代碼後發現,如果我刪除它時,iframe的大小調整變得更加敏感和內容被加載更快。我怎樣才能讓iframe響應內部運行的谷歌分析跟蹤代碼?如何在GA腳本完成加載之前讓iframe調整器工作?

而且,設置初始iframe高度爲0,然後允許iframe的大小調整到尺寸的幀最初加載動態iframe中的內容的正確方法?

編輯(添加代碼): 這是我的主頁

var hzframe = iFrameResize({ 
    checkOrigin: false, 
    initCallback: function(){ 
     var x = document.getElementsByClassName("hzload"); 
     var i; 
     for (i = 0; i < x.length; i++) { 
      x[i].style.display = "none"; 
     } 
    }, 
    resizedCallback: function() { 
     var x = document.getElementsByClassName("hzload"); 
     var i; 
     for (i = 0; i < x.length; i++) { 
      x[i].style.display = "none"; 
     } 
    } 
},".hzframe"); 

上運行的代碼,如果你想在行動中看到了整個事情,你可以看看這個jsfiddle

目前,我在initCallback和resizedCallback中隱藏加載gif的代碼相同,因爲gif並不總是被initCallback隱藏起來。

+0

你必須向我們展示了iframe代碼調整。我猜你已經把它設置爲'onload',如果GA加載速度超慢,這確實會導致這種情況。 – ceejayoz

+0

@ceejayoz我編輯我的問題,包括一些代碼。有沒有一種方法可以在GA腳本完成加載之前調整iframe的大小或是否必須等到所有內容都加載完畢? – user1935733

+0

https://github.com/davidjbradshaw/iframe-resizer你正在使用的庫? – ceejayoz

回答

相關問題