我的任务是将jQuery放入webapp,需要特定于Internet Explorer 8浏览器的功能(不需要7个)。怎么做?
在jQuery 1.8中可以做到:
if ($.browser.msie && $.browser.version == '8') { /* does not matter */ }
在版本1.9中删除了$.browser
。推荐的$.support
无效。
答案 0 :(得分:7)
$.browser
因jc 而被弃用(自1.3起)。将它用于你想要使用它的东西不是推荐的做法。如果您依赖某个功能,请测试该功能(这称为feature detection,$.support
是执行此操作的一种方法),而不是测试特定浏览器。
如果你真的需要定位旧的IE,请使用conditional comments(当旧的IE不再存在时可以轻松删除,并且不会不必要地膨胀其他浏览器):
<!--[if IE 8]>
<script src="my_ie8_specific_stuff.js"></script>
<![endif]-->
在my_ie8_specific_stuff.js
内你可以写任何你需要的东西,它只会在IE8上执行。
<html>
元素另一种方法是在<html>
标记上添加带有条件注释的类:
<!--[if IE 8]> <html class="ie8"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
This clever and tricky technique会在{8}中的ie8
上放一个html
课程,其他任何浏览器都无法获得该课程。
您可以在jQuery中轻松检查:
var isIE8 = $('html').hasClass('ie8');
答案 1 :(得分:-2)
如果您在应用中偶然使用了Kendo,则无需添加任何内容。当您在不同的浏览器中时,会自动生成一个类。 如果你想检查它是否是ie8,你可以这样做:
if($('html').hasClass('k-ie8'))
// do something