Определение версии браузера Jquery - PullRequest
1 голос
/ 05 июля 2011

ОС: 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. Это был старый баг плагина. Спасибо разработчикам Firefox за ответ. Вопрос закрыт. Я не буду снимать этот вопрос, так что каждый будет знать, чтобы проверить «about: config» перед паникой :) 1035 *

Ответы [ 2 ]

1 голос
/ 05 июля 2011

Вам понадобится плагин jQuery, чтобы увидеть «настоящую» версию браузера:
http://jquery.thewikies.com/browser/

Тестовый случай: http://jsfiddle.net/Zf3NW/1/
(Обратите внимание, что он включен в раздел «Управление ресурсами»)

Протестировано в Chrome и Firefox и вернуло истинные версии.

0 голосов
/ 05 июля 2011

Версия, которую вы получаете - 1.9.2.15 - это версия движка рендеринга Gekko, а не самого Firefox.

Каждая версия Firefox поставляется с определенной версией Gekko, поэтому вы можете работать с этой версией Firefox при условии, что вы знаете, что пользователь запускает Firefox.

Дело в том, что многие меньшие браузеры на рынке (например, Camino, Flock, IceWeasel и т. Д.) Заимствуют свои механизмы рендеринга из браузеров с большими именами. как и другие браузеры, в том числе Gekko, данная версия Gekko может работать в Firefox, но также может работать и в другом браузере.

JQuery не может этого сказать, но на самом деле его это не волнует - если он знает, какой движок рендеринга у него есть, и какую версию он имеет дело со всем, о чем JQuery нужно беспокоиться, потому что браузеры используют один и тот же механизм рендеринга, как правило, будет отображать страницы практически одинаково

Надеюсь, это немного вам объясняет.

...