Steve Desmond
[element].requestFullscreen();
document.exitFullscreen();
* must be called from a short-lived event handler
function goFullscreen() {
document.documentElement.requestFullscreen();
}
function endFullscreen() {
document.exitFullscreen();
}
[element].requestFullscreen();
[element].msRequestFullscreen();
[element].mozRequestFullScreen();
[element].webkitRequestFullscreen();
Enter msMozWebkit.js
navigator.geolocation.getCurrentPosition(someCallback);
navigator.geolocation.getCurrentPosition(displayPosition);
(yes, that The Guardian)
Volunteer?
Launch the GitHub Pull Request Selfie GIF Automator
navigator.getUserMedia(options, successCallback, errorCallback);
function successCallback(stream) { ... }
| Type | Firefox | Chrome | Opera | IE | Safari |
|---|---|---|---|---|---|
| MP4 | |||||
| WebM | |||||
| Ogg |
<audio/>
function showVideo(stream) {
jQuery('#webcam')[0].videoSource(stream);
}
function startWebcam() {
navigator.getUserMedia({ video: true }, showVideo, errorHandler);
}
localStorage.setItem('someKey', 'someValue');
var x = localStorage.getItem('someKey');
sessionStorage.setItem('someKey', 'someValue');
var x = sessionStorage.getItem('someKey');
* usually limited to 5-10 MB per domain
function handleWorkerMessage(event) {
jQuery('#worker-response').html(event.data);
}
function runWorker() {
var bee = new Worker("js/worker.js");
bee.onmessage = handleWorkerMessage;
}
[worker.js]: postMessage('text');
(awaiting message...)
Notification.requestPermission(callback);
new Notification([title], { body: [body] });
~$ npm install -g cordova
~$ cordova create [newdir] --link-to=[webapp]
~$ cordova platform add [platform]
~$ cordova build
~$ cordova run