Storing volume in local storage

This commit is contained in:
Sam Potts 2015-02-19 22:37:41 +11:00
parent d690560fc2
commit b24d763d40
2 changed files with 24 additions and 3 deletions

View File

@ -60,6 +60,17 @@
fullscreen: { fullscreen: {
enabled: true, enabled: true,
fallback: true fallback: true
},
storage: {
enabled: true,
supported: function() {
try {
return "localStorage" in window && window.localStorage !== null;
}
catch(e) {
return false;
}
}
} }
}; };
@ -782,7 +793,12 @@
function _setVolume(volume) { function _setVolume(volume) {
// Use default if needed // Use default if needed
if(typeof volume === "undefined") { if(typeof volume === "undefined") {
volume = config.volume; if(config.storage.enabled && config.storage.supported) {
volume = window.localStorage.plyr_volume;
}
else {
volume = config.volume;
}
} }
// Maximum is 10 // Maximum is 10
if(volume > 10) { if(volume > 10) {
@ -792,6 +808,11 @@
player.volume.value = volume; player.volume.value = volume;
player.media.volume = parseFloat(volume / 10); player.media.volume = parseFloat(volume / 10);
_checkMute(); _checkMute();
// Store the volume in storage
if(config.storage.enabled && config.storage.supported) {
window.localStorage.plyr_volume = volume;
}
} }
// Mute // Mute
@ -974,7 +995,7 @@
_findElements(); _findElements();
// Set volume // Set volume
_setVolume(config.volume); _setVolume();
// Setup fullscreen // Setup fullscreen
_setupFullscreen(); _setupFullscreen();

2
dist/js/plyr.js vendored

File diff suppressed because one or more lines are too long