繁体   English   中英

Jquery浏览器版本检测

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM