有任何方法可以禁用浏览器"验证"?

时间:2015-11-18 11:02:37

标签: javascript html validation dom

我的网站上有一些像

这样的代码
<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(该文件已由我的托管服务提供商自动添加用于广告目的)

问题是该页面在移动访问时重定向

3 个答案:

答案 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' });