帮忙看下这段js的用意?是关于百度自动提交链接的js

发布于 2022-09-07 19:52:02 字数 561 浏览 28 评论 0

先看代码如下

<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标签前面,也就是要求这个js 最先执行,是这样吗??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

雨落星ぅ辰 2022-09-14 19:52:02

创建script标签,根据当前网址协议,选择设置不同的地址,然后将这个script标签插入网页第一个script标签前。但是最先执行就不一定了,看代码放的位置,可能执行这段代码之前,它前面的其他script标签已经先执行了。

夜未央樱花落 2022-09-14 19:52:02

这段代码并没有什么高科技,就是最正常的一种 动态脚本注入 技术。
也算是异步加载js脚本的一种方式,很多按需异步加载就是这么实现的。

关于你说的放在所有script标签前面是没问题的,但是执行顺序不能保证,因为是异步加载,需要通过请求网络下载js脚本文件,触发load事件才能执行。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文