[英]Jquery browser version detection
操作系统: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: it seems this is firefox bug, checked with http://developer.yahoo.com/yui/examples/yahoo/yahoo_ua_detection_clean.html and it created object YAHOO.env.ua with value 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”字符串替换中找到。 这是旧插件错误。感谢 firefox 开发人员的回答。 问题关闭。 我不会删除这个问题,所以每个人都会知道在恐慌之前检查“about:config”:)
您必须使用 jQuery 插件才能查看“真实”浏览器版本:
http://jquery.thewikies.com/browser/
现场测试用例: http://jsfiddle.net/Zf3NW/1/
(注意它包含在管理资源下)
在 Chrome 和 Firefox 下测试并返回真实版本。
您获得的版本——1.9.2.15——是 Gekko 渲染引擎的版本,而不是 Firefox 本身的版本。
Firefox 的每个版本都附带特定版本的 Gekko,因此您可以从中计算出 Firefox 版本,前提是您知道用户正在运行 Z763F7F1AEC350CD1A462Z38D1D5C3C29。
但问题是,市场上的许多小型浏览器(例如 Camino、Flock、IceWeasel 等)都从大牌浏览器那里借用了它们的渲染引擎。 正如其他浏览器(包括 Gekko)也使用的那样,因此给定版本的 Gekko 可以在 Firefox 中运行,但它也可以在另一个浏览器中运行。
JQuery 无法分辨,但它也不在乎——只要它知道它的渲染引擎和版本,它可以处理 JQuery 需要担心的所有事情,因为浏览器使用相同的渲染引擎通常会呈现几乎相同的页面。
希望这对您有所解释。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.