forked from Chaospott/site
Fix elevator
This commit is contained in:
+29
-12
@@ -27,6 +27,10 @@ var Elevator = function(options) {
|
||||
|
||||
var mainAudio;
|
||||
var endAudio;
|
||||
var mainAudioPath;
|
||||
var endAudioPath;
|
||||
var preloadAudio;
|
||||
var loopAudio;
|
||||
|
||||
var that = this;
|
||||
|
||||
@@ -112,6 +116,8 @@ var Elevator = function(options) {
|
||||
|
||||
requestAnimationFrame( animateLoop );
|
||||
|
||||
loadAudio();
|
||||
|
||||
// Start music!
|
||||
if( mainAudio ) {
|
||||
mainAudio.play();
|
||||
@@ -173,6 +179,19 @@ var Elevator = function(options) {
|
||||
}
|
||||
}
|
||||
|
||||
function loadAudio() {
|
||||
if( !mainAudio && mainAudioPath ) {
|
||||
mainAudio = new Audio( mainAudioPath );
|
||||
mainAudio.setAttribute( 'preload', preloadAudio );
|
||||
mainAudio.setAttribute( 'loop', loopAudio );
|
||||
}
|
||||
|
||||
if( !endAudio && endAudioPath ) {
|
||||
endAudio = new Audio( endAudioPath );
|
||||
endAudio.setAttribute( 'preload', 'auto' );
|
||||
}
|
||||
}
|
||||
|
||||
function init( _options ) {
|
||||
// Bind to element click event, if need be.
|
||||
body = document.body;
|
||||
@@ -181,13 +200,17 @@ var Elevator = function(options) {
|
||||
duration: undefined,
|
||||
mainAudio: false,
|
||||
endAudio: false,
|
||||
preloadAudio: true,
|
||||
preloadAudio: 'none',
|
||||
loopAudio: true,
|
||||
};
|
||||
|
||||
_options = extendParameters(_options, defaults);
|
||||
|
||||
if( _options.element ) {
|
||||
if( _options.elements ) {
|
||||
for( var i = 0; i < _options.elements.length; i++ ) {
|
||||
bindElevateToElement( _options.elements[i] );
|
||||
}
|
||||
} else if( _options.element ) {
|
||||
bindElevateToElement( _options.element );
|
||||
}
|
||||
|
||||
@@ -207,16 +230,10 @@ var Elevator = function(options) {
|
||||
|
||||
window.addEventListener('blur', onWindowBlur, false);
|
||||
|
||||
if( _options.mainAudio ) {
|
||||
mainAudio = new Audio( _options.mainAudio );
|
||||
mainAudio.setAttribute( 'preload', _options.preloadAudio );
|
||||
mainAudio.setAttribute( 'loop', _options.loopAudio );
|
||||
}
|
||||
|
||||
if( _options.endAudio ) {
|
||||
endAudio = new Audio( _options.endAudio );
|
||||
endAudio.setAttribute( 'preload', 'true' );
|
||||
}
|
||||
mainAudioPath = _options.mainAudio;
|
||||
endAudioPath = _options.endAudio;
|
||||
preloadAudio = _options.preloadAudio;
|
||||
loopAudio = _options.loopAudio;
|
||||
}
|
||||
|
||||
init(options);
|
||||
|
||||
Reference in New Issue
Block a user