你到处都会听到这样的说法:使用 javascript 嗅探用户代理字符串来检测浏览器版本是一件非常糟糕的事情。最新版本的 jQuery 现已弃用$.browser
物体代替$.support
。但是,如果出现仅影响 IE 而不是其他浏览器的错误或问题,并且我不确定原因,我该怎么办?
就我而言,一些 jQuery 代码使工具提示出现和消失,并在鼠标悬停和鼠标移出时显示动画。在 Internet Explorer 中,它看起来很糟糕,而且令人不安,工具提示 div 在隐藏之前会变成非常大的尺寸,如果您将鼠标放在带有提示的一堆项目上,它真的会杀死浏览器。我不知道 IE 不“支持”哪些特定功能,而我应该对其进行测试,因此嗅探 IE 并使用不同的方法要容易得多。我可以/应该做什么?
因为仅仅嗅探用户代理(这就是 jquery 填充 $.browser 对象的作用)并不能告诉你全部真相。
用户代理字符串可以在许多浏览器中轻松更改,因此,例如,如果您禁用某些在 IE 中不起作用的功能,seems要使用 IE,您可能会意外地禁用某些未来浏览器或用户的这些功能,这些功能只是出于某种原因(例如为了绕过基于浏览器嗅探的限制),pretend使用 IE。
这似乎不是一个太大的问题,但它仍然是不好的做法.
是的,我也是 IE 嗅探者。我用
$.browser.msie && document.all
只是要确定。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)