Javascript 任何禁用浏览器的方法';s";验证“;?
我有一个网站,上面有一些代码,比如Javascript 任何禁用浏览器的方法';s";验证“;?,javascript,html,validation,dom,Javascript,Html,Validation,Dom,我有一个网站,上面有一些代码,比如 <html> <head> ... </head> <body> ... </body> </html> <script src="./file.js"></script> ... ... 但当我在浏览器中打开时,它会通过将标记移动到标记上方来自动更正,如下所示,并包括文件: <html
<html>
<head>
...
</head>
<body>
...
</body>
</html>
<script src="./file.js"></script>
...
...
但当我在浏览器中打开时,它会通过将标记移动到标记上方来自动更正,如下所示,并包括文件:
<html>
<head>
...
</head>
<body>
...
<script src="./file.js"></script>
</body>
</html>
...
...
我知道这是由于HTML验证造成的,但是有没有办法防止这种“自动更正”
我不需要执行file.js(该文件已由我的主机提供商出于广告目的自动添加)
问题是页面在移动访问时重定向
(该文件已由我的主机提供商出于广告目的自动添加)
然后是他们在做这件事,而不是浏览器。在将页面发送到浏览器之前,他们会将其添加到浏览器中。浏览器不关心元素位于何处以及它们应该位于何处
但是,出于任何实际目的,即使该脚本文件包含在文件末尾,它仍将执行。不管如何,脚本都将运行。如果您知道脚本执行的作用,可能有一些方法可以阻止它实际执行任何操作,但不管它在页面上的位置如何,它仍然会执行
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无法检测移动访问选项1:(作者@RolandStarke)
在html标记后添加一个
选项2:(作者@Elentriel)
通过将以下脚本附加到文件顶部,强制更改用户代理
navigator.defineGetter('userAgent',function(){return'Mozilla/5.0(windowsnt 6.1;WOW64)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/46.0.2490.86 Safari/537.36')代码>是的,但是有没有办法阻止html标记之外的脚本被执行?可能是通过使用一个脚本来剥离最后几行?不,他们没有,他们可以控制你的页面,所以你所做的任何事情都会在它到达他们之前完成,他们仍然可以添加它,所以没有必要在上面浪费时间。找其他主机提供商购买主机。2美元/月。您可以查看我的个人资料;)如果只是附加了脚本标记,则可以尝试添加开始注释或标记。但是主人不会高兴的。我不敢相信这会奏效。。。感谢@RolandStarket他们的脚本使用文档。从手机查看时,位置重定向到他们的主页。我尝试了document.onbeforeunload
但仍然没有运气..navigator.\uu defineGetter_uu('userAgent',function(){return'Mozilla/5.0(windowsnt 6.1;WOW64)AppleWebKit/537.36(KHTML,像Gecko)Chrome/46.0.2490.86 Safari/537.36';在你的页面顶部试试这个