我的网站上有一些像
这样的代码<html>
<head>
...
</head>
<body>
...
</body>
</html>
<script src="./file.js"></script>
但是当我在浏览器中打开时,它会通过移动&lt; script&gt;来自动更正。上面的标记&lt; body&gt;标记,如下所示并包含文件:
<html>
<head>
...
</head>
<body>
...
<script src="./file.js"></script>
</body>
</html>
我知道它是由于HTML验证,但有没有办法阻止这样的&#34;自动更正&#34;?
我不需要执行file.js(该文件已由我的托管服务提供商自动添加用于广告目的)
问题是该页面在移动访问时重定向
答案 0 :(得分:1)
(该文件已由我的托管服务提供商自动添加用于广告目的)
然后, 他们 正在执行此操作,而不是浏览器。在您的页面发送到浏览器之前,他们会将其添加到浏览器中。浏览器并不关心元素的位置和位置。
出于任何实际目的,即使该脚本文件包含在文件的末尾,它仍然会执行。
答案 1 :(得分:0)
无论如何都会运行脚本。如果您知道脚本执行的内容可能会阻止它实际执行任何操作,但无论它在页面上的位置如何都会执行。
navigator.__defineGetter__('userAgent', function(){
return 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36';
});
回答问题:如何手动设置用户代理以使js无法检测到移动访问
答案 2 :(得分:0)
选项1:(来自@RolandStarke)
在html标记后添加<noscript>
。
选项2:(@Elentriel)
通过将以下脚本附加到文件顶部来强制更改User-Agent。
navigator.defineGetter('userAgent', function(){ return 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36' });