Как я обнаруживаю IE 8 с jQuery?

Я должен обнаружить не только тип браузера, но и версию также с помощью jQuery. Главным образом я должен узнать, является ли это IE 8 или нет.

Я не уверен, делаю ли я его правильно.

Если я делаю:

if (jQuery.browser.version >= 8.0) {
dosomething}

Я не уверен, что это будет работать на версию 8.123.45.6, или будет это?

Править: Обратите внимание, что JQuery 2 + отбросил поддержку IE8 и ниже и поэтому больше не может использоваться для обнаружения IE8. При использовании текущей версии JQuery необходимо использовать решение Не-jQuery.

102
задан Dave 12 November 2014 в 15:58
поделиться

4 ответа

Это задокументировано в документации API jQuery . Проверьте Internet Explorer с помощью $. Browser.msie , а затем проверьте его версию с помощью $. Browser.version .

ОБНОВЛЕНИЕ: $. Browser удален в jQuery 1.9

Метод jQuery.browser () устарел с jQuery 1.3 и удален в 1.9. При необходимости он доступен как часть подключаемого модуля jQuery Migrate. Мы рекомендуем использовать обнаружение функций с такой библиотекой, как Modernizr.

79
ответ дан 24 November 2019 в 04:22
поделиться

document.documentMode не определен, если браузер не является IE8,

он возвращает 8 для стандартного режима и 7 для «совместимого с IE7»

Если он работает как IE7, многие функции css и dom не поддерживаются.

27
ответ дан 24 November 2019 в 04:22
поделиться

Вам также следует посмотреть jQuery.support . Обнаружение функций намного более надежно, чем обнаружение браузера, для кодирования ваших функций (если вы просто не пытаетесь регистрировать версии браузера).

3
ответ дан 24 November 2019 в 04:22
поделиться

Не забывайте, что вы также можете использовать HTML для обнаружения IE8.

<!--[if IE 8]>
<script type="text/javascript">
    ie = 8;
</script>
<![endif]-->

Имея это перед всеми вашими скриптами, вы можете просто проверить переменную "ie" или что-то еще.

56
ответ дан 24 November 2019 в 04:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: