Как обнаружить Firefox в JavaScript?
Я хочу обнаружить все версии Firefox.
javascript
jquery
firefox
Миргород
источник
источник
//# sourceURL
подходом к добавленным скриптам, они должны бытьeval
отредактированы, но все остальные браузеры работают.Ответы:
Это обнаружит любую версию Firefox:
более конкретно:
Вы можете рассмотреть возможность использования функции обнаружения ала Modernizr или связанного с ней инструмента, чтобы выполнить то, что вам нужно.
источник
var is_firefox = /firefox/i.test(navigator.userAgent)
indexOf
строковый метод намного быстрее, чем регулярное выражение.Если вы хотите узнать, что такое числовая версия FireFox, вы можете использовать следующий фрагмент:
источник
Этот сценарий обнаруживает все версии Firefox для рабочего стола от версии 1 до 46.
Это третий раз, когда я пытался ответить на этот вопрос в StackOverflow, потому что я продолжал находить новые способы сломать мой скрипт. Тем не менее, я думаю, что это работает сейчас. Это отличное упражнение, чтобы узнать о функциях Firefox и интересно посмотреть, как развивались события. Сценарий может быть переписан с использованием различных функций, я выбрал те, которые, по моему мнению, были бы наиболее полезными, я хотел бы, чтобы кто-то другой переписал другие более полезные функции, разместил здесь и сравнил результаты.
Я поместил скрипт в оператор try на тот случай, если у пользователя отключены какие-либо настройки в about.config. В противном случае я протестировал на каждой версии Firefox, и он обнаруживает каждую. Я дал краткое описание того, для чего каждая функция используется в комментариях. Я хотел бы сделать это и для Webkit, но нахожу документацию не такой хорошей. Mozilla легко загружает предыдущие версии и подробные релизы.
источник
Долгое время я использовал альтернативу:
потому что я не доверяю строкам агента пользователя. Некоторые ошибки не обнаруживаются с помощью функции обнаружения, поэтому для некоторых обходных путей требуется обнаружение браузера.
Кроме того, если вы работаете над ошибкой в Gecko, то эта ошибка, вероятно, также относится к производным Firefox, и этот код должен работать и с производными (есть ли в Waterfox и Pale Moon «Firefox» в строке агента пользователя?).
источник
Это прекрасно работает для IE, Firefox и Chrome.
источник
вот это оно
источник
лучшее решение для меня:
источник