昨天没事干,弄了个360的推送代码放在博客上,结果晚上无意打开检查时,发现360 chrome浏览器居然报错,研究了一番,发现360自动收录默认的 js 代码使用document.write, 所以在 chrome 会直接报错。

360自动推送js代码报错的解决方法

解决办法

第一步,记录360推送的keycode

在原推送js里面找,?后面就是keycode

https://jspassport.ssl.qhimg.com/11.0.1.js?你的keycode

第二步,将keycode填入如下代码

下面其实就是360的推送代码,只是单独提取出来,加入keycode,避免了document.write

<script>
(function(e){function t(e){var t=location.href,n=t.split("").reverse(),r=e.split(""),i=[];for(var s=0,o=16;s<o;s++)i.push(r[s]+(n[s]||""));return i.join("")}var n=/([http|https]:\/\/[a-zA-Z0-9\_\.]+\.so\.com)/gi,r=e.location.href;if(r&&!n.test(r)&&window.navigator.appName){var i="//s.360.cn/so/zz.gif",o="你的keycode",u=t(o),a=new Image;r&&(i+="?url="+encodeURIComponent(r)),o&&(i+="&sid="+o),u&&(i+="&token="+u),o&&(a.src=i)}})(window);
</script>

第三步,代码替换

将上述代码放入你网站前即可,删去原代码即可。

文章目录