Как определить, какой браузер используется клиентом с помощью jQuery

Как определить, какой браузер использует клиент?

я видел, что в документации по Jquery API есть $.browser, но он больше не работает в jQuery 1.9.1.

какие-либо предложения?


person Boaz Hoch    schedule 09.04.2013    source источник
comment
Почему вам нужно знать браузер? Вы смотрели, почему они удалили его? Чего вы хотите больше, чем navigator.userAgent ?   -  person Denys Séguret    schedule 09.04.2013
comment
возможный дубликат Какова замена $.browser   -  person Quentin    schedule 09.04.2013


Ответы (4)


Вы можете использовать подключаемый модуль jQuery Migrate. и вызовите функцию $.browser. Это будет работать!

Использовать плагин легко; просто включите его сразу после тега script для jQuery, например.

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script>

JS:

$.each($.browser, function(i, val) {
  $("<div>" + i + " : <span>" + val + "</span>")
  .appendTo( document.body );
});

ДЕМО ЗДЕСЬ (см. Флажок Migrate 1.1.0 установлен слева)

person palaѕн    schedule 09.04.2013

$.browser был удален в версии 1.9, поскольку предполагалось, что обнаружение функций предпочтительнее через $.support.

Проверьте http://api.jquery.com/jQuery.support/.

person Jaydeep Rajput    schedule 09.04.2013

См. этот http://jquery.com/upgrade-guide/1.9/#jquery-browser-removed

Используйте плагин jQuery Migrate как предложил Уильям

person Dhaval Marthak    schedule 09.04.2013

Я предлагаю вам использовать обнаружение функций вместо обнаружения браузера. Вот некоторые подробности об обнаружении признаков:

http://api.jquery.com/jQuery.support/

Но для ответа на ваш вопрос вы можете использовать этот код для обнаружения браузера:

<script type="text/javascript">
 $(document).ready(function() {
    if (!navigator.userAgent.match(/mozilla/i) && 
        ! navigator.userAgent.match(/webkit/i) ){
        alert('Mozilla');
    }
 });
</script>
person Sanjeev Rai    schedule 09.04.2013