<rmcreative>

RSS

Определяем браузер из JS

29 января 2009

В продолжение темы определения браузеров Gareth Heyes привёл хаки для других распространённых браузеров:

//Firefox detector 2/3 by DoctorDan
FF=/a/[-1]=='a'
 
//Firefox 3
FF3=(function x(){})[-5]=='x'
 
//Firefox 2
FF2=(function x(){})[-6]=='x'
 
//IE
IE='\v'=='v'
 
//Safari
Saf=/a/.__proto__=='//'
 
//Chrome
Chr=/source/.test((/a/.toString+''))

Всё вместе:

B=(function x(){})[-5]=='x'?'FF3':(function x(){})[-6]=='x'?'FF2':'\v'=='v'?'IE':/a/.__proto__=='//'?'Saf':/s/.test(/a/.toString)?'Chr':'Op'

Комментарии RSS

  1. №1183
    reinventer
    reinventer 29 янв. 2009 г., 17:22:18

    проверяю в FF3.1 beta2:

    [removed]alert((function x(){})[-5]=='x'?'FF3':(function x(){})[-6]=='x'?'FF2':'\v'=='v'?'IE':/a/.proto=='//'?'Saf':/s/.test(/a/.toString)?'Chr':'Op');

    пишет: Op

  2. №1184
    reinventer
    reinventer 29 янв. 2009 г., 17:25:02

    Ой, скушалось: java_script:alert(....

    Ну вы поняли :)

    В IE и Opere все верно

  3. №1185
    Sam
    Sam 29 янв. 2009 г., 17:38:22

    Передал автору.

    Кстати, забыл сослаться на него. Исправил.

  4. №1296
    mihdan
    mihdan 19 февр. 2009 г., 18:01:40

    Неплохо. Как тебе удается нарывать столько полезностей.

    Еще не разу не пожалел, что нарыл твой блог.

  5. №9087
    Valera
    Valera 03 июля 2014 г., 18:39:42

    В принципе из navigator.userAgent можно извлечь многое: Название и версию базового и исходного браузера, ОС и его версию и на чём написана, название мобилы если пользоваться смартфоном и т.д. См: goodpc.narod.ru/other/main/browser_inf.htm небольшое описание goodpc.narod.ru/other/main/browser.htm. А собственно исходник на JavaScript goodpc.narod.ru/proc/browser.js Дерзайте и вышлете свои замечания!

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.