jQuery(node).addClass('abc');jQuery(node).removeClass('abc');
el.classList.length;
el.classList.add('myCssClass');
el.classList.remove('myCssClass');
el.classList.contains('myCssClass');
el.classList.toggle('myCssClass');
el.classList.item('myCssClass');
working draft
jQuery(node).data('abc',123);jQuery(node).data('abc'); //123
<div data-id="123" data-foot-size>Ivan</div>
el.dataset.id === '123';el.dataset.footSize === '';// set el.dataset.footSize = '44';// check'someDataAttr' in el.dataset

document.documentElement.requestFullScreen()el.requestFullScreen();
document.cancelFullScreen();
document.fullscreenEnabled;
document.fullscreenElement;
fullscreenchangefullscreenerror
:-webkit-full-screen {
background: red;
}
<iframe allowfullscreen="true" />


doc.addEventListener("mousemove", function(e){ // e.movementX // e.movementY
}, false);
курсор скрывается
абсолютная позиция мыши не важна
el.requestPointerLock();
document.exitPointerLock();
document.pointerLockElement;
pointerlockchange и pointerlockerror

visibilitychange
document.hidden
true / false
document.visibilityState
"visible"
"hidden"
"prerender"

navigator.getUserMedia(
{video:true, audio:false},
function(stream) {}, //ok
function(){} // fail
);
streamUrl = window.URL.createObjectURL(stream)
file api
video.src = streamUrl;
context = canvas.getContext('2d');
context.drawImage(video, 0, 0);
canvas.toDataURL('image/png');

window.navigator.battery
charging // true/falsechargingTime // время до конца зарядкиdischargingTime // время до полной разрядкиlevel // 0..1
onchargingchangeonchargingtimechangeondischargingtimechangeonlevelchange
W3C Last Call Working Draft 11 February 2014

window.navigator.vibrate()
vibrate(1000) // вибрировать 1 секvibrate([1000]) // то же самоеvibrate([1000,2000,3000]) // // вибрировать 1 сек, // остановиться на 2 сек // вибрировать 3 секvibrate(0)// остановить все вибрации

Editor's Draft 10 February 2014

win.addEventListener("deviceorientation", function(e){ // e.alpha // e.beta
// e.gamma
}, false);
вот и весь API
...
Демо
работает только







Editor's Draft 10 February 2014


win.addEventListener("devicemotion", function(e){ // e.acceleration
// e.accelerationIncludingGravity
// e.rotationRate
// e.interval
}, false);
Устройство, лежащее горизонтально на столе
e.acceleration = { x: 0,
y: 0,
z: 9.81};
e.accelerationIncludingGravity = { x: 0,
y: 0,
z: 0};
Демо
работает только



Знание о существовании новых API
дает новые идеи и возможности

Даешь приятные плюшки для
N% пользователей с новейшими браузерами
