Определение мобильного браузера javascript — это достаточно остро стоящая сегодня задача, потому, что с приходом большого количества разнообразных мобильных устройств, сайты стали трансформироваться и подстраиваться под их рамки. Таким образом, для некоторых сайтов очень важно отключить какой-то не очень важный функционал в мобильных версиях (который к тому же может там и не работает).
Делаем определение мобильного браузера javascript
Для этого можно использовать специальную объект-функцию на чистом Javascript, которая способна по признакам UserAgent определить мобильный это браузер или нет, а также уточнить какой именно мобильный браузер.
В принципе она сделана по образу и подобию функции browser не так давно удалённой из jQuery. Смотрите сами:
var isMobile = { Android: function() { return navigator.userAgent.match(/Android/i); }, BlackBerry: function() { return navigator.userAgent.match(/BlackBerry/i); }, iOS: function() { return navigator.userAgent.match(/iPhone|iPad|iPod/i); }, Opera: function() { return navigator.userAgent.match(/Opera Mini/i); }, Windows: function() { return navigator.userAgent.match(/IEMobile/i); }, any: function() { return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows()); } };
Это декларация и описание функции, которое нужно вставить внутри тэга <script> где-нибудь в шапке сайта. А затем уже вызывать её в нужно для детекции месте.
Используем определение мобильного браузера javascript (примеры)
Например нам нужно определить мобильный сейчас браузер вообще, или десктопный. Тогда нужно сделать следующую проверку:
if(isMobile.any()){ //действие, которое нужно сделать, если браузер мобильный }
А если нужно проверить будет какой-то определённый мобильный браузер (например скрыть кнопку, если человек зашел с iOS, то нужно сделать вот так:
if(isMobile.iOS()){ //действие, которое нужно сделать, если браузер iOS }
В общем и целом, думаю, всё понятно. Будут вопросы, пишите комментарии.
Источник кода: http://www.abeautifulsite.net/blog/2011/11/detecting-mobile-devices-with-javascript/