(Javascript) Список значений «navigator.AppName» для всех браузеров?

#javascript #browser #browser-detection #navigator

#javascript #браузер #обнаружение браузером #навигатор

Вопрос:

Какие значения возвращаются для navigator.appName значений для всех распространенных браузеров?

navigator.appName Значение для Firefox равно Netscape .

Какие значения возвращаются для IE, Firefox, Google Chrome, Safari, Opera, Flock и т.д.?

Комментарии:

1. Это также «Netscape» для Chrome и Safari, возможно, и для других браузеров тоже. Так что, вероятно, это не самое полезное свойство?

2. И Chromium (14) (возможно, очевидно) в Ubuntu 11.04.

3. Что??? Боже мой, почему??? Итак, для чего navigator.appName используется? (или) просто бесполезное свойство?

4. Это очень старое свойство, родом со времен Netscape (отсюда значение часто / всегда? является «Netscape»). Я думаю, что какой-то очень старый устаревший код там полагается на это, поэтому современные браузеры, как правило, притворяются Netscape, чтобы не нарушать его.

5. navigator.userAgent и navigator.platform , скорее всего, будут полезны. Но даже в этом случае лучше выполнять обнаружение функций, а не обнаружение браузера. Иногда вам действительно приходится переходить к обнаружению браузера, но это должно быть последним средством.

Ответ №1:

Только что узнал, что предварительный просмотр IE11 изменил значение navigator.AppName:

до IE11 это значение было:

 "Microsoft Internet Explorer"
  

теперь в IE11 preview это значение было изменено на:

 "Netscape"
  

не уверен, почему MS сделала это, и это не будет постоянным после выпуска IE11

Комментарии:

1. Вероятно, это связано с тем, что navigator.AppName устарел и браузеры могут возвращать все, что захотят.

Ответ №2:

Если вы доверяете агенту пользователя, вы можете использовать этот веб-сайт:http://www.useragentstring.com /

Он предоставляет API для анализа вашего текущего браузера. В нем также есть данные о каждом пользовательском агенте, который вы можете себе представить.