IE11 onload事件延迟了十几秒,影响页面使用

caadoo 发布于 2016/09/09 10:02
阅读 384
收藏 0

求助啊!js这样写就不会影响页面onload事件的触发了吗?现在因为代码里一个异步的js文件载入时间有时候会很慢,造成了onload事件要等十几秒,影响用户使用。百度得到的说是你这样写就不会影响onload了,但是页面上现在看不出来,onload是在这个js载入之前触发还是之后,求助


(function(){
if(window.attachEvent){
    window.attachEvent("onload", asyncLoad);
   }else{
    window.addEventListener("load", asyncLoad);
   }
    function asyncLoad(){
    var ga = document.createElement('script'); 
       ga.type = 'text/javascript'; 
       ga.text = "jQuery.getScript('https://service.udcredit.com:10000/sdk/device-fingerprint/web?partnerCode=201606126706&appKey=wF6ft4Eiafzlp5ZvUUW6&_=1473313450105')";
       var s = document.getElementsByTagName('script')[0]; 
       s.parentNode.insertBefore(ga, s);
   }
})();

加载中
0
zabcd117
zabcd117
如果你的脚本是完全独立的,不依赖于dom的顺序的话,那么你可以给script标签加上defer属性。这个属性的作用就是异步下载,dom渲染完再执行。
caadoo
caadoo
回复 @zabcd117 : 这样就不会影响onload了是吧,但是这个js文件是在加载完就运行吗?就是页面渲染的时候
caadoo
caadoo
回复 @zabcd117 : 我是在页面最后加载的这个js文件,onload在这个前面写的,你是这个意思吗
zabcd117
zabcd117
回复 @caadoo : 这个唯一可以确定的就是不影响你的html加载过程,如果你这个脚本是直接写在head里面的话,你可以试试,如果你是在dom ready以后或者onload以后手动加载的话,那么是不会影响你的onload事件的。
caadoo
caadoo
我现在也是异步的,但是怎么耽误onload了呢
caadoo
caadoo
这个是会在onload之后加载吗?
返回顶部
顶部