在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/網(wǎng)絡(luò)安全  HTML/ 幫忙看下這段js的用意?是關(guān)于百度自動提交鏈接的js

幫忙看下這段js的用意?是關(guān)于百度自動提交鏈接的js

先看代碼如下

<script>
(function(){
    var bp = document.createElement('script');
    var curProtocol = window.location.protocol.split(':')[0];
    if (curProtocol === 'https') {
        bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
    }
    else {
        bp.src = 'http://push.zhanzhang.baidu.com/push.js';
    }
    var s = document.getElementsByTagName("script")[0];
    s.parentNode.insertBefore(bp, s);
})();
</script>

這段代碼的意思是不是:外部引用js文件(2選1),并且放在所有script標(biāo)簽前面,也就是要求這個js 最先執(zhí)行,是這樣嗎??

回答
編輯回答
殘淚

創(chuàng)建script標(biāo)簽,根據(jù)當(dāng)前網(wǎng)址協(xié)議,選擇設(shè)置不同的地址,然后將這個script標(biāo)簽插入網(wǎng)頁第一個script標(biāo)簽前。但是最先執(zhí)行就不一定了,看代碼放的位置,可能執(zhí)行這段代碼之前,它前面的其他script標(biāo)簽已經(jīng)先執(zhí)行了。

2017年2月15日 20:07
編輯回答
萌吟

這段代碼并沒有什么高科技,就是最正常的一種 動態(tài)腳本注入 技術(shù)。
也算是異步加載js腳本的一種方式,很多按需異步加載就是這么實現(xiàn)的。

關(guān)于你說的放在所有script標(biāo)簽前面是沒問題的,但是執(zhí)行順序不能保證,因為是異步加載,需要通過請求網(wǎng)絡(luò)下載js腳本文件,觸發(fā)load事件才能執(zhí)行。

2017年5月24日 10:35