Потерянные
спецификации

DeviceOrientation
Event

Использует

  1. Гироскоп
  2. Компас
  3. Акселерометр

события

  1. deviceorientation
  2. devicemotion
  3. compassneedscalibration

событие
deviceorientation

  1. alpha (Z — α°)
  2. beta (X — β°)
  3. gamma (Y — γ°)
  4. absolute
γ°
Y
window.addEventListener(
  "deviceorientation",
  function(event) {
    console.log(event.alpha);
    console.log(event.beta);
    console.log(event.gamma);
  },
  true);

событие
devicemotion

  1. interval (мс)
  2. acceleration (м/с2)
  3. accelerationIncludingGravity (м/с2)
  4. rotationRate (°)
window.addEventListener(
  "devicemotion",
  function(event) {
    console.log(
      event.interval,
      event.accelerationIncludingGravity.x,
      event.acceleration.x,
      event.rotationRate.alpha);
  },
  true);

событие
compassneedscalibration

Поддержка

  • IE 11+
  • Firefox 6+
  • Chrome 7+
  • Safari 6.1+
  • Opera 15+
  • iOS Safari 4.2+
  • Android Browser 3+
  • Blackberry Browser 10+
  • Opera Mobile 12+
  • Chrome для Android 29+
  • Firefox для Android 24+
http://caniuse.com/deviceorientation

The Screen
Orientation API

свойства

  1. orientation

window.orientation

orientation

screen.mozOrientation

orientation
if(typeof window.orientation == 'undefined'){
  console.log(screen.mozOrientation);
}else{
  console.log(window.orientation);
}

методы

  1. lockOrientation
  2. unlockOrientation
if (screen.mozLockOrientation([
  "landscape-primary",
  "landscape-secondary"
])) {
  // Успешно заблокировали
} else {
  // Невозможно заблокировать
}

события

  1. orientationchange
  2. mozorientationchange
screen.addEventListener(
  "mozorientationchange",
  callbackFunction,
  true);

window.addEventListener(
  'orientationchange',
  callbackFunction,
  true);

Поддержка

  • iOS Safari
  • Firefox для FirefoxOS

Ambient Light Events

Использует

  1. Датчик оствещения

события

  1. deviceligh (lux)
  2. lightlevel (dim, normal, bright)
window.addEventListener(
  "lightlevel",
  function(event) {
    console.log(event.value);
  },
  true);
window.addEventListener(
  "devicelight",
  function(event) {
    console.log(event.value);
  },
  true);

Поддержка

Proximity Events

Использует

  1. Датчик расстояния

события

  1. deviceproximity
  2. userproximity

событие
deviceproximity

  1. value (cm)
  2. min (cm)
  3. max (cm)
window.addEventListener(
  "deviceproximity",
  function(event) {
    console.log(event.value+' cm');
    console.log(event.min+' cm');
    console.log(event.max+' cm');
  },
  true);

событие
userproximity

  1. near
window.addEventListener(
  "userproximity",
  function(event) {
    if (event.near) {
      // Близко
    }else{
      // Далеко
    }},
  true);

Поддержка

Vibration API

Использует

orientation

метод

  1. vibrate
navigator.vibrate([50, 100, 1000]);
navigator.vibrate(500);
navigator.vibrate([]);
navigator.vibrate(0);

Поддержка

The Network
Information API

свойства

  1. bandwidth (∞, 0, МБ/с)
  2. metered

события

  1. change
var connection = navigator.connection ||
  navigator.mozConnection ||
  navigator.webkitConnection;
function updateConnectionStatus() {
  console.log(connection.bandwidth);
  console.log(connection.metered);
}
connection.addEventListener(
  "change",
  updateConnectionStatus,
  true);
updateConnectionStatus();

Поддержка

Web Notifications

Notification.permission
  1. default — еще не выбрали
  2. denied — запретили
  3. granted — разрешили
Notification.requestPermission(callback);
function callback(permission){
  if(permission == "granted"){
    // Разрешено
  }else{
    // Запрещено
  }
}
new Notification("Заголовок",{
  icon: "icon.png",
  body: "Сообщение",
  dir:  "ltr",
  lang: "ru-RU",
  tag:  "deadline"
});

события

  1. click
  2. show
  3. error
  4. close

Поддержка

  • FF 22+
  • Chrome 22+
  • Safari 7+
  • Blackberry Browser 10+
  • Opera Mobile 16+
  • Chrome for Android 29+
  • Firefox for Android 24+
http://caniuse.com/notifications

Battery Status API

var battery = navigator.battery ||
              navigator.mozBattery ||
              navigator.webkitBattery;

свойства

  1. level
  2. charging
  3. chargingTime
  4. dischargingTime

события

  1. levelchange
  2. chargingchange
  3. chargingtimechange
  4. dischargingtimechange

Поддержка

vcard

Anton Nemtsev

http://frontender.info/

thesilentimp@gmail.com

@silentimp

skype: ravencry




Репозиторий: http://goo.gl/h5GtBp
Cлайды: http://silentimp.github.io/lost-specs/