Объект Navigator

Объект Navigator содержит информацию о браузере пользователя.

Свойства

appCodeNameВозвращает имя кода браузера
appNameВозвращает имя браузера
appVersionВозвращает информацию о версии браузера
cookieEnabledОпределяет , будет ли cookies включены в браузере
geolocationВозвращает объект геолокации, который может использоваться, чтобы найти положение пользователя
languageВозвращает язык браузера
onLineОпределяет, является ли браузер онлайн
oscpuВозвращает строку, которая идентифицирует текущую операционную систему.
platformВозвращает, для которой платформа скомпилированные браузер
userAgentВозвращает заголовок агента пользователя, отправленный браузером на сервер

Методы

javaEnabled()Определяет, будет ли или не включил браузер Java

appCodeName

Свойство appCodeName возвращает кодовое имя браузера.

Синтаксис

navigator.appCodeName

Комментарии

Не полагайтесь на это свойство для получения правильного значения.

Пример

alert (navigator.appCodeName);

appName

Свойство appName возвращает имя браузера.

Синтаксис

navigator.appName

Комментарии

Не полагайтесь на это свойство для получения правильного значения.

Пример

alert (navigator.appName);

appVersion

Свойство appVersion возвращает информацию о версии браузера.

Синтаксис

navigator.appVersion

Комментарии

Не полагайтесь на это свойство для получения правильного значения.

Пример

alert (navigator.appVersion);

cookieEnabled

Свойство cookieEnabled возвращает логическое значение (true или false) позволяющее узнать включена ли поддержка cookie в браузере пользователя или нет.

Синтаксис

navigator.appVersion

Пример

alert (navigator.cookieEnabled);

geolocation

Свойство geolocation возвращает объект геолокации, который может использоваться, чтобы найти положение пользователя.

Так как это может поставить под угрозу конфиденциальность пользователей, позиция не доступна, если пользователь не одобрит его.

Синтаксис

navigator.geolocation

Возвращаемое значение

Ссылка на объект Geolocation

Описание, комментарии, примеры

Возможны проблемы при показе примеров в Internet Explorer

У объекта geolocation есть метода getCurrentPosition().

Нужно учесть, что метод getCurrentPosition() выполняется асинхронно. Это означает, что в нашем коде после вызова метода getCurrentPosition() интерпретатор пойдет выполнить код дальше, не ожидая определение местоположение пользователя. Но нам как то нужно знать когда будет выполнена определение местоположение. И для этого мы можем передать в метод getCurrentPosition() callback-функцию (функция обратного вызова).

Функция обратного вызова принимает один аргумент — position. В данном аргументе придет результат выполнения метода getCurrentPosition().

    if(navigator.geolocation){
        navigator.geolocation.getCurrentPosition(function (position) {
            alert("OK");
        });
    }else{
        alert("Объект Geolocation не поддерживается.");
    }

При просмотре примера вверху окна браузера появится сообщение, что сайт хочет получить данные о вашем местоположение. Нужно разрешить сообщить местоположение.

После выполнение метода getCurrentPosition() в объект position придет два свойства — это timestamp и coords. Свойство timestamp — это время определение местоположения пользователя в миллисекундах.

А в свойстве coords содержится в свою очередь свойства:

function success(position) {
  var latitude = position.coords.latitude; // широта
  var longitude = position.coords.longitude; // долгота
  var accuracy = position.coords.accuracy; // точность
  var result = "широта: " + latitude + "\n долгота: " + longitude + "\n точность: " + accuracy;
  alert(result);
 }
if(navigator.geolocation){navigator.geolocation.getCurrentPosition(success); }

В втором параметре метода getCurrentPosition() приходит код ошибки, если будет ошибка. Давайте создадим еще одну функцию, которая будет принимать один параметр — код ошибки и выводит пользователю сообщение об ошибке.

function success(position) {
   var latitude = position.coords.latitude; // широта
   var longitude = position.coords.longitude; // долгота
   var accuracy = position.coords.accuracy; // точность

   var result = " широта: " + latitude + "\n долгота: " + longitude + "\n точность: " + accuracy;
   alert(result);
}

// Обработка ошибок
function error(errorCode) {
   var msg = "";
   switch (errorCode) {
     case 1: msg = "Нет разрешения"; // Пользователь не дал разрешения на определение местоположения
       break;
     case 2: msg = "Техническая ошибка";
       break;
     case 3: msg = "Превышено время ожидания";
       break;
     default: msg = "Что то случилось не так";
  }

   alert(msg);
}

if(navigator.geolocation){
   navigator.geolocation.getCurrentPosition(success, error);
}

Совместимость с браузерами

5,09,03,55,016,0

language

Свойство language возвращает языковую версию браузера.

Синтаксис

navigator.language

Возвращаемое значение

Строка, представляющая языковую версию браузера: "en" , "en-US" , "de" , "fr" и т.д.

Примеры

alert (navigator.language)

Совместимость с браузерами

Да11,01,0ДаДа

maxTouchPoints

Cвойство maxTouchPoints возвращает максимальное количество одновременных точек касания, поддерживаемых текущим устройством.

Синтаксис

navigator.maxTouchPoints;

Примеры

var max=navigator.maxTouchPoints;
var senc =  (('ontouchstart' in window) && (navigator.msMaxTouchPoints > 0));
alert("maxTouchPoints = " + max + '\n'+
'Сенсорный экран - ' + (senc ? "Да" : "Нет"));

onLine

Cвойство onLine возвращает логическое значение, указывающее, является ли браузер в Интернете или в автономном режиме.

Синтаксис

navigator.onLine

Возвращаемое значение

Логический, указывающий, является ли браузер в Интернете или в автономном режиме.
Возвращает true, если браузер находится в сети, в противном случае она возвращает false.

Примеры

alert (navigator.onLine)

oscpu

Cвойство oscpu возвращает строку, которая идентифицирует текущую операционную систему.

Синтаксис

oscpuInfo = window.navigator.oscpu;

Возвращаемое значение

oscpuinfo:
Операционная системаФормат строки oscpuInfo
OS/2OS/2 Warp x (either 3, 4 or 4.5)
Windows CEWindowsCE x.y
Windows 64-bit (64-bit build)Windows NT x.y; Win64; x64
Windows 64-bit (32-bit build)Windows NT x.y; WOW64
Windows 32-bitWindows NT x.y
Mac OS X (PPC build)PowerPC Mac OS X version x.y
Mac OS X (i386/x64 build)Intel Mac OS X or macOS version x.y
Linux 64-bit (32-bit build)Output of uname -s plus "i686 on x86_64"
LinuxOutput of uname -sm
x.y относится к версии операционной системы

Примеры

alert (navigator.oscpu)

platform

С помощью свойства platform Вы можете узнать для какой платформы скомпилирован браузер пользователя (т.е. фактически позволяет узнать ОС, которую использует пользователь).

Синтаксис

navigator.platform

Возвращаемое значение

Строка, представляющая платформу браузера: HP-UX, Linux i686, Linux armv7l, mac68k, MacPPC, MacIntel, SunOS, Win16, Win32, WinCE И т.д..

Комментарии

Не полагайтесь на эту функцию, чтобы получить нужное значение.

Пример

alert (navigator.platform)

userAgent

Cвойство userAgent возвращает значение заголовка пользовательского агента, посланного браузером на сервер.

Синтаксис

navigator.userAgent

Возвращаемое значение, содержит информацию об имени, версии и платформы браузера: информация об имени, версии и платформы браузера

Пример

alert (navigator.userAgent)

javaEnabled()

С помощью метода javaEnabled Вы можете узнать включена ли поддержка Java в браузере пользователя.

Синтаксис

navigator.javaEnabled()

Возвращаемое значение

Если метод вернул true значит поддержка Java включена, если false выключена.

Пример

alert ( navigator.javaEnabled() );