Javascript 条件IE声明-如果是现代浏览器

Javascript 条件IE声明-如果是现代浏览器,javascript,internet-explorer,cross-browser,Javascript,Internet Explorer,Cross Browser,我的JavaScript只需要面向现代浏览器(IE9、FF、Chrome等),不包括IE8和更旧的浏览器。我一直在试验,但我不确定它是否有效(没有合适的IE测试设施) 我在考虑为比IE8更新的版本添加一个脚本,然后再为所有非IE版本添加一个脚本: <!--[if gt IE 8)]><script src="sites/all/themes/customtheme/js/custom.js" type="text/javascript" charset="utf-8">&

我的JavaScript只需要面向现代浏览器(IE9、FF、Chrome等),不包括IE8和更旧的浏览器。我一直在试验,但我不确定它是否有效(没有合适的IE测试设施)

我在考虑为比IE8更新的版本添加一个脚本,然后再为所有非IE版本添加一个脚本:

<!--[if gt IE 8)]><script src="sites/all/themes/customtheme/js/custom.js" type="text/javascript" charset="utf-8"></script><![endif]-->


<!--[if !IE]><!--><script src="sites/all/themes/customtheme/js/custom.js" type="text/javascript" charset="utf-8"></script><!--<![endif]-->

有没有人有过将脚本添加到现代浏览器并排除IE8及更旧版本的经验或代码片段?

您只需要一个标记:

<![if gt IE 8]>
<script src="sites/all/themes/customtheme/js/custom.js" type="text/javascript" charset="utf-8"></script>
<![endif]>

IE将使用该条件并仅包含IE9及更高版本的脚本,其他浏览器将忽略该条件标记,并且由于它们不构成注释标记,因此将包含该脚本

请参阅。

您只需要一个标签:

<![if gt IE 8]>
<script src="sites/all/themes/customtheme/js/custom.js" type="text/javascript" charset="utf-8"></script>
<![endif]>

IE将使用该条件并仅包含IE9及更高版本的脚本,其他浏览器将忽略该条件标记,并且由于它们不构成注释标记,因此将包含该脚本


请参阅。

虽然不是对您的问题的直接回答

你的目标应该是检测浏览器的功能

Modernizer在这方面有很大帮助:


我这么说是因为除了旧的IE之外,基本上所有的浏览器都放进了所谓的“现代浏览器”中,你什么时候会在FF2、Opera或我的电视上运行脚本?

而不是直接回答你的问题

你的目标应该是检测浏览器的功能

Modernizer在这方面有很大帮助:


我这么说是因为除了旧的IE之外,基本上所有的浏览器都放进了所谓的“现代浏览器”的桶里,你什么时候真的会在FF2、Opera或我的电视上运行脚本?

最好的方法就是像你做的那样使用条件Css……如何调用和针对每个IE版本有很多不同的方法

此外,这个css技巧可能会有所帮助


希望它能有所帮助。

最好的方法是像您所做的那样使用条件Css……关于如何调用和针对每个IE版本,有很多不同的方法

此外,这个css技巧可能会有所帮助


希望有帮助。

FF2被归类为现代浏览器?您应该使用功能检测而不是浏览器检测。FF2是否将其归类为现代浏览器?您应该使用功能检测,而不是浏览器检测.Perfect。因此,这适用于所有现代浏览器。那么我可以为IE8或更老版本添加一个特定的?比如:完美。因此,这适用于所有现代浏览器。那么我可以为IE8或更老版本添加一个特定的?比如:我正在做一些(显然)困难的JS,在旧浏览器中不起作用。我更喜欢在旧浏览器中禁用它,而不是开始破解。我正在做一些(显然)难以在旧浏览器中工作的JS。我更喜欢在旧浏览器上禁用它,而不是开始破解。