javascript 通过document.write warning调用解析器阻塞、跨站点(即不同的eTLD+1)脚本

v6ylcynt  于 2022-12-28  发布在  Java
关注(0)|答案(1)|浏览(356)

当我查看网站的控制台时,我在Chrome中看到以下警告:
通过document.write调用解析器阻止、跨站点(即不同的eTLD+1)脚本https://t1.daumcdn.net/cssjs/common/cts/vr200/dcts.js。由于网络连接不佳,浏览器可能会在本次或以后的页面加载中阻止此脚本的网络请求。如果在本次页面加载中被阻止,则会在后续的控制台消息中确认。有关详细信息,请参阅https://www.chromestatus.com/feature/5718547946799104
我的页面代码:

<script type="text/javascript"> 
 //<![CDATA[ 
 var DaumConversionDctSv="type=M,orderID=,amount="; 
 var DaumConversionAccountID="Ki7kLa_84SUcid7XE.GR4A00"; 
 if(typeof DaumConversionScriptLoaded=="undefined"&&location.protocol!="file:"){ 
    var DaumConversionScriptLoaded=true; 
    document.write(unescape("%3Cscript%20type%3D%22text/javas"+"cript%22%20src%3D%22"+(location.protocol=="https:"?"https":"http")+"%3A//t1.daumcdn.net/cssjs/common/cts/vr200/dcts.js%22%3E%3C/script%3E")); 
 } 
 //]]> 
</script>

    <script>
        (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
        })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

        ga('create', 'UA-141511041-1', 'auto');
        ga('send', 'pageview');
    </script>

有谁能帮忙修复这个警告吗?谢谢。

aiazj4mn

aiazj4mn1#

不确定,但您可以尝试以下选项:

异步加载脚本:您可以使用async属性异步加载脚本,这意味着脚本一可用就立即执行,而不会阻塞解析器。为此,您可以将async属性添加到head标记中的script标记:

<script src="https://t1.daumcdn.net/cssjs/common/cts/vr200/dcts.js" async></script>

延迟脚本:可以使用defer属性将脚本的执行延迟到页面完成解析之后。为此,可以将defer属性添加到head标记中的script标记:

<script src="https://t1.daumcdn.net/cssjs/common/cts/vr200/dcts.js" defer></script>

将脚本放在页面底部:您可以将脚本放置在页面底部,刚好在结束标记之前,以确保在页面完成分析后加载脚本。这将防止脚本阻塞分析器。

相关问题