MediaWiki:AudioPlayer.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
var audioplayerz = document.getElementsByClassName("audio-button");
var audioPlayer = function() {
var audioplayerx = this;
var audioplayery = audioplayerx.getElementsByTagName("audio")[0];
if (audioplayery.paused) {
var audio = document.getElementsByTagName('audio'),
audioplayeri = audio.length;
while (audioplayeri--) {
audio[audioplayeri].pause();
audio[audioplayeri].currentTime = 0;
}
var audioplayerj = document.getElementsByClassName("audio-button playing");
while(audioplayerj.length > 0) {
audioplayerj[0].className = 'audio-button';
}
audioplayery.play();
audioplayerx.className = "audio-button playing";
audioplayery.addEventListener("timeupdate", audioUpdate, false);
audioplayery.addEventListener("canplaythrough", function() {
audioplayerd = audioplayery.duration;
}, false);
} else {
audioplayery.pause();
audioplayery.currentTime = 0;
audioplayerx.className = "audio-button";
}
};
function audioUpdate() {
if (this.currentTime == audioplayerd) {
this.parentElement.className = "audio-button"
this.removeEventListener('timeupdate', audioUpdate, false);
}
}
for (var audioplayeri = 0; audioplayeri < audioplayerz.length; audioplayeri++) {
audioplayerz[audioplayeri].addEventListener('click', audioPlayer, false);
}