Detect firefox browser with jquery
我遇到的一个问题是,当firefox低于2.0时,我的css有一个bug。
我想检测浏览器来修复我的CSS错误。
这是我的代码:
1 2 3 4 5 6 7 | $(document).ready ( function() { if ( $.browser.mozilla == true && $.browser.version < '3.0' ) { $('img.frameMargin').css('margin-left','35px'); } } ); |
但是此代码似乎不起作用。
感谢前进。
在讨论中已经回答了这个问题:
使用Javascript,如何确定我当前的浏览器是计算机上的Firefox还是其他设备?
要回答该帖子中的问题,感谢" BalusC"的回答:
1 2 3 4 5 6 | var FF = !(window.mozInnerScreenX == null); if(FF) { // is firefox } else { // not firefox } |
以上文章建议使用jQuery.browser。但是jQuery API建议不要使用此方法。(请参阅API中的DOCS)。
jQuery API建议使用'jQuery.support'(http://api.jquery.com/jQuery.support/)。
原因是
更新:
现在从1.9版本开始将jQuery.browser从jQuery中删除
http://api.jquery.com/jQuery.browser/
如果您真的需要使用它。.jQuery.browser已作为单独的jQuery插件移植到了
https://github.com/gabceb/jquery-browser-plugin
希望有所帮助
我自己碰到了这个问题。 $ .browser.version实际上会检测渲染引擎的版本,而不是浏览器的版本(尽管其名称所隐含的含义),因此,如果要检测Firefox 4及更高版本,则应使用
1 | $.browser.mozilla && $.browser.version > '2' |
因为Firefox 4使用Gecko 2.0作为呈现引擎。我知道这很令人困惑:)
您将必须执行此操作...
1 | $.browser.version < '1.9' |
FireFox 2应该返回1.8 ...这样就可以通过。
在我的计算机(Mac OS X 10.6)上,Firefox 4中的
来自http://api.jquery.com/jQuery.browser/:
We recommend against using this property; please try to use feature detection instead (see jQuery.support).
如果您需要使用Javascript进行可靠的浏览器检测,请在线查看众多教程之一(例如本教程)。