Сегодня мне потребовалось найти замену/альтернативу $.browser - функции, с помощью которой можно было определить тип и версию браузера. Функция была признана устаревшей еще в версии 1.3, и вот в 1.9 была удалена полностью.
Вот, что пишут об этом сами разработчики jQuery:
$.browser: Ever since jQuery 1.4, we’ve been evangelizing that browser detection via the user agent string is a bad idea. Yet we’ve been an enabler of bad practice by continuing to offer $.browser. As of jQuery 1.9 we’ll remove it entirely and you’ll need to use the 1.9 compat plugin. If your code isn’t weaned off browser detection yet, check out Modernizr for a very thorough set of feature detections you can use instead. And of course, you’re welcome to read the tea leaves in the navigator.userAgent string directly, there’s nothing stopping you but your conscience.
Вместо устаревшей функции разработчики рекомендуют воспользоваться jQuery.support, либо применить jQuery Migrate plugin, который можно использовать для компенсации не только $.browser, но и других устаревших функций.
Есть и третий способ, к которому можно прийти поковыряв, скажем, jQuery 1.7 и посмотрев как же это все работало там). Добавьте этот код после подключения файла с Jquery и перед подключением файлов с плагинами:
/*Browser detection patch*/
jQuery.browser = {};
jQuery.browser.mozilla=/mozilla/.test(navigator.userAgent.toLowerCase())&&!/webkit/.test(navigator.userAgent.toLowerCase());
jQuery.browser.webkit=/webkit/.test(navigator.userAgent.toLowerCase());
jQuery.browser.opera=/opera/.test(navigator.userAgent.toLowerCase());
jQuery.browser.msie=/msie/.test(navigator.userAgent.toLowerCase());
Теперь мы можем определять тип браузера как и раньше. Если же вам нужна еще и версия браузера (jQuery.browser.version), то придется дописать еще несколько строк. Я их приводить не буду, сделаю проще - размещу ссылку на уже готовый файл, назовем его jquery.mb.browser.min.js. В архиве содержится как исходный код, который можно всячески улучшать, так и сжатая версия, которая весит всего 3,5kB.