2013-12-10 204 views
1

我包括外部JavaScript文件Facebook和CrazyEgg在異步模式加載外部腳本異步頁面增加頁面加載延遲

所以我的問題是:這些腳本是否會增加執行jQuery準備就緒函數的延遲。

我,包括佈局的底部外部JS文件:

setTimeout(function(){var a=document.createElement("script"); 
    var b=document.getElementsByTagName('script')[0]; 
    a.src=document.location.protocol+"//dnn506yrbagrg.cloudfront.net/pages/scripts/0012/6522.js?"+Math.floor(new Date().getTime()/3600000); 
    a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1); 

    window.fbAsyncInit = function() { 
    FB.init({appId: "facebook_app_id", status: true, cookie: true}); 
    }; 
    (function(d){ 
    var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = '//connect.facebook.net/en_US/all.js'; 
    d.getElementsByTagName('head')[0].appendChild(js); 
    }(document)); 

所以上述外部JS可能會導致任何延遲執行my_function();

myapp_js_file.js包括在佈局

// myapp_js_file.js 

$(document).ready(function() { 
    my_function(); 
}) 

回答

0

據我所知調用任何東西(特別是外部組件)會增加等待時間,需要更多的要求來完成的頭。

但是我不知道rails是否緩存這樣的東西,儘管我懷疑它。

增加的延遲時間(如果有的話)應該是標稱然而

+0

感謝把你的這一觀點,但我們正加載外部JS文件在異步模式下,即使這樣才導致延遲? –

+0

AFAIK更多請求=更多時間 –

+0

延遲增加將是名義上的 –