fix videoplaylist.js

This commit is contained in:
Jesús 2019-11-26 12:18:41 -05:00
parent b9e11f7b6f
commit 4fda3e5b49
No known key found for this signature in database
GPG Key ID: F6EE7BC59A315766

View File

@ -1,32 +1,30 @@
init();
function init(){ function init(){
var video = document.getElementById('videoplaylist'); let video = document.getElementById('videoplaylist');
var playlist = document.getElementById('playlist'); let playlist = document.getElementById('playlist');
var tracks = playlist.getElementsByTagName('a'); let tracks = playlist.getElementsByTagName('a');
video.volume = 0.50; video.volume = 0.50;
//Cuenta los tracks //Cuenta los tracks
for(var track in tracks) { for(let track in tracks) {
var link = tracks[track]; let link = tracks[track];
if(typeof link === "function" || typeof link === "number") continue; if(typeof link === "function" || typeof link === "number"){continue;}
link.addEventListener('click', function(e) { link.addEventListener('click', function(e) {
e.preventDefault(); e.preventDefault();
var song = this.getAttribute('href'); let song = this.getAttribute('href');
run(song, video, this); run(song, video, this);
}); });
} }
//Agregamos evento para reproducir el siguiente items //Agregamos evento para reproducir el siguiente items
video.addEventListener('ended',function(e) { video.addEventListener('ended',function(e) {
for(var track in tracks) { for(let track in tracks) {
var link = tracks[track]; let link = tracks[track];
var nextTrack = parseInt(track) + 1; let nextTrack = parseInt(track) + 1;
if(typeof link === "function" || typeof link === "number") continue; if(typeof link === "function" || typeof link === "number"){continue;}
if(!this.src) this.src = tracks[0]; if(!this.src){this.src = tracks[0];}
if(track == (tracks.length - 1)) nextTrack = 0; if(track == (tracks.length - 1)){nextTrack = 0;}
console.log(nextTrack); console.log(nextTrack);
if(link.getAttribute('href') === this.src) { if(link.getAttribute('href') === this.src) {
var nextLink = tracks[nextTrack]; let nextLink = tracks[nextTrack];
run(nextLink.getAttribute('href'), video, nextLink); run(nextLink.getAttribute('href'), video, nextLink);
break; break;
} }
@ -35,19 +33,20 @@ function init(){
} }
function run(song, video, link){ function run(song, video, link){
var parent = link.parentElement; let parent = link.parentElement;
//Quita el active de todos los elementos de la lista //Quita el active de todos los elementos de la lista
var items = parent.parentElement.getElementsByTagName('li'); let items = parent.parentElement.getElementsByTagName('li');
for(var item in items) { for(let item in items) {
if(items[item].classList) if (items[item].classList) {
items[item].classList.remove("is-active-play"); items[item].classList.remove("is-active-play");
}
} }
//Agrega active a este elemento //Agrega active a este elemento
parent.classList.add("is-active-play"); parent.classList.add("is-active-play");
//Inicia la reproducción //Inicia la reproducción
video.src = song; video.src = song;
video.load(); video.load();
video.play(); video.play();
} }
init();