在最新的jQuery中,jQuery.browser似乎被弃用了。医生建议我使用jQuery.support。我应该使用哪种支持测试来检查当前浏览器是否为Firefox?
发布于 2009-07-06 20:08:38
您错过了“support”方法的要点。您不会检查用户是否正在使用Firefox。你可以检查浏览器是否“支持”你想做的任何DOM操作。这就是所谓的“特征检测”,它比“浏览器检测”(你正在尝试做的事情)更可取。
例如,假设你想验证浏览器是否可以渲染包含'opacity‘的CSS,所以你使用了jquery.support.opacity属性。
那么你为什么要做“特征检测”呢?简单地说,您可以编写未来兼容的跨浏览器脚本。
假设您检查了“Firefox”并应用了一些精心设计的DOM/CSS效果。如果下一个版本的Firefox破坏了您所依赖的特定DOM/CSS特性,该怎么办?您必须返回并更新您的脚本。但是如果你使用了“特征检测”,你的代码将会在未来证明你的代码不会发生这样的变化。
现在,我并不是建议你能够使用“功能检测”来满足你的所有需求,而是考虑一下你是想要使用功能检测还是浏览器检测。
更多值得一读的链接:
http://peter.michaux.ca/articles/feature-detection-state-of-the-art-browser-scripting http://www.nczonline.net/blog/2006/11/16/browser-detection-versus-feature-detection/
https://stackoverflow.com/questions/1088934
复制相似问题