操作系统:Windows XP
浏览器:Firefox 5.0(使用它并从3.5更新)
Jquery:1.6.2(来自cdn http://code.jquery.com/jquery.min.js)
在我的jquery脚本中,我使用浏览器检测功能,它返回1.9.2.15版本,但在这里:http://en.wikipedia.org/wiki/Mozilla_Firefox_5#Version_5.0没有这样的版本!我也有问题,因为我的脚本认为它适用于Firefox 3.6而不是5.0。
这是firefox的用户代理错误还是jquery?
感谢。
UPD:看来这是firefox错误,用http://developer.yahoo.com/yui/examples/yahoo/yahoo_ua_detection_clean.html检查,它创建了对象YAHOO.env.ua,其值为 gecko:1.92 !!!
UPD2:检查我的浏览器http://davecardwell.co.uk/javascript/jquery/plugins/jquery-browserdetect/检测到 您使用的是版本:3.6.15(3.6)
UPD3:在Windows 7上使用干净的firefox测试 - UA版本= 5.0
UPD4:发布到bugzilla https://bugzilla.mozilla.org/show_bug.cgi?id=669267
UPD5:对不起大家,在“about:config”字符串替换中找到。这是旧的插件bug。感谢firefox开发人员的回答。问题已结束。我不会删除这个问题所以每个人都会知道在恐慌之前检查“about:config”:)
答案 0 :(得分:1)
您必须使用jQuery插件才能看到“真正的”浏览器版本:
http://jquery.thewikies.com/browser/
实时测试案例:http://jsfiddle.net/Zf3NW/1/
(注意它包含在管理资源下)
在Chrome和Firefox下测试并返回了真实版本。
答案 1 :(得分:0)
你得到的版本 - 1.9.2.15 - 是Gekko渲染引擎的版本,而不是Firefox本身的版本。
每个版本的Firefox都附带一个特定版本的Gekko,因此如果您知道该用户正在运行Firefox,您可以从中计算出Firefox版本。
但事实上,市场上许多较小的浏览器(例如Camino,Flock,IceWeasel等)都是从大牌浏览器中借用它们的渲染引擎。因为其他浏览器也使用它,包括Gekko,所以给定版本的Gekko可以在Firefox中运行,但它也可以在另一个浏览器中运行。
JQuery无法说明这一点,但它也并不关心 - 只要它知道它是哪个渲染引擎,以及哪个版本处理JQuery需要担心的一切,因为浏览器使用相同的渲染引擎通常会呈现几乎相同的页面。
希望能为您解释一下。