Как обнаружить IE7 с помощью jQuery? - PullRequest
46 голосов
/ 02 июля 2010

Как обнаружить IE7 с помощью jQuery, возможно, с помощью jQuery.browser?

Ответы [ 3 ]

70 голосов
/ 02 июля 2010

Есть метод

if ($.browser.msie  && parseInt($.browser.version, 10) === 7) {
  alert('IE7'); 
} else {
  alert('Non IE7');
}

- обновить

Обратите внимание, что браузер $. удален из jQuery 1.9

.
52 голосов
/ 02 июля 2010

См. $. Браузер . Эта функция устарела, и вам следует рассмотреть $. Support .

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

  1. Используйте следующую разметку (из HTML5 Boilerplate)

    <!--[if lt IE 7]><html class="ie6"><![endif]-->
    <!--[if IE 7]><html class="ie7"><![endif]-->
    <!--[if IE 8]><html class="ie8"><![endif]-->
    <!--[if gt IE 8]><!--><html><!--<![endif]-->
    <head>
    
  2. Использование селектора с hasClass в jQuery

    $('html').hasClass('ie7');
    $('html.ie7 .myclass').dostuff();
    
  3. И использовать как часть обычного селектора в css

    .mydiv {max-height:50px}
    .ie6 .mydiv {height:50px} /* ie6 max-height fix */
    
8 голосов
/ 02 июля 2010

Все остальные вещи учитываются:

if ($.browser.msie && $.browser.version == 7) {

    //do something

    };

Должно работать.Является ли это правильным путем - другой вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...