对不起标题,确实令人困惑。
我有一些 javascript 代码可以在除 IE 7 和 8 之外的所有浏览器中运行(它会引发错误)。因此,作为一种解决方法,我希望代码不要在所有冗余的浏览器的某些页面上运行。
我希望解决方案在 javascript 中,因为我只想在某些页面中禁用而不是将规则应用于所有页面。
对不起标题,确实令人困惑。
我有一些 javascript 代码可以在除 IE 7 和 8 之外的所有浏览器中运行(它会引发错误)。因此,作为一种解决方法,我希望代码不要在所有冗余的浏览器的某些页面上运行。
我希望解决方案在 javascript 中,因为我只想在某些页面中禁用而不是将规则应用于所有页面。
例如,我认为此功能可以帮助您跳过 javascript 端的 javascripts:
http://msdn.microsoft.com/en-us/library/ms537509%28v=vs.85%29.aspx
或者您也可以在 php 端执行此操作:
仅当浏览器为特定版本的 IE 时,才可以在 head 标签中使用 IE 条件语句来包含 JS:
<!--[if lt IE 8]>
<script src="myscript.js" type="text/javascript"></script>
<![endif]-->
代码故意包含在注释语句中!
http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx
我真的不明白你的问题。但是如果你想禁用 IE 的脚本
你可以试试这个(例如):
对于 IE 的禁用脚本 -
<!--[if !IE]><!-->
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
// your inline script goes here
</script>
<!--<![endif]-->
禁用 IE 8 的脚本 -
<!--[if !(IE 8)]><!-->
<script src="path/to/external/script"></script>
<script>
// your inline script goes here
</script>
<!--<![endif]-->
和
<!--[if !(gte IE 8)]><!-->
<script src="path/to/external/script"></script>
<script>
// your inline script goes here
</script>
<!--<![endif]-->
删除脚本块:
为您的脚本设置一个 ID,
<script id="sample">
...
</script>
并使用此代码,
$("#sample").remove();
<![if !IE]>
<script src="script.js"></script>
<![endif]>
我猜你正在寻找的是document.location
结合浏览器检测。但请注意,大多数浏览器都可以伪造实例。如果您使用的是 jQuery,我建议您使用该$.support
属性而不是尝试获取用户代理。
http://api.jquery.com/jQuery.support/
问候
尼维奥洛斯