#javascript #jquery
Как через jQuery проверить браузер, которого нет среди заранее заготовленных? Например Maxthon.
Ответы
Ответ 1
Каждый браузер имеет строку navigator.userAgent, например, в моей версии Хрома: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36" navigator.userAgent браузера Maxthon, может быть такое: "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.1 (KHTML, like Gecko) Maxthon/3.0.8.2 Safari/533.1" Можно найти список таких строков в UserAgentString.com. Если хотите проверить, если браузер Maxthon, то можно так: navigator.userAgent.toUpperCase().indexOf("MAXTHON") !== -1 Хочу предупреждать, что не всегда легко угадать браузер от navigator.userAgent, потому что браузеры обычно создают строку userAgent ради совместимости сайтов. Именно поэтому Mozilla/5.0 уже не имеет отношение с браузерами Mozilla. Оно там, потому что давно много сайтов только поддерживали Netscape.Ответ 2
Через объект navigator в целом, или через navigator.userAgent в частности например var ua = navigator.userAgent.toLowerCase(); var isMaxthon = ua.indexOf("maxthon") > -1;//если в строке встречается слово "maxthon" ( toLowerCase() был нужен, чтобы не морочится с заглавными и строчными буквами, иначе "Maxthon" != "maxthon" ) var isMSIE = ua.indexOf("msie") > -1;//А это - для ie [...]//и т.д. - можно хоть все загнать //и длее, где нужно проверить максона это или нет if(isMaxthon){[...]} это просто как пример - можно и упростить версию же можно также получить из userAgent. Например isMSIE6 = ua.indexOf ("msie 6") > -1;//вычисляем любителя ретро (6го ie) (userAgent для различных браузерв можно загуглить - они все есть в открытом доступе и там можно посмотреть какие-либо характерные для конкретного данного браузера строки) P.S.: замечу, что это - обычный js, а не jQuery (м.б. на jQuery тоже как-то можно - не знаю, но это - в любом случае будет работать)
Комментариев нет:
Отправить комментарий