- commit
- 10985b63967579bd83ed818436d8ded7b47b1f73
- parent
- 10f1efdb25ea39648d2f837c59dc14a652f62848
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2019-03-02 21:57
refactor
Diffstat
| M | xiply.js | 42 | +++++++++++++++++++++--------------------- |
1 files changed, 21 insertions, 21 deletions
diff --git a/xiply.js b/xiply.js
@@ -4,49 +4,49 @@ 4 4 * License: GPL-3+ 5 5 */ 6 67 -1 "use strict";8 -19 7 function init_xiply(container) { -1 8 "use strict"; -1 9 10 10 var player = document.createElement('audio'); 11 11 player.setAttribute('controls', true); 12 12 container.appendChild(player); 13 1314 -1 function dispatchEvent(name, trackTitle) {-1 14 var dispatchEvent = function(name, trackTitle) { 15 15 player.dispatchEvent(new CustomEvent(name, {16 -1 'detail': trackTitle-1 16 'detail': trackTitle, 17 17 }));18 -1 }-1 18 }; 19 1920 -1 function _current() {21 -1 return container.getElementsByClassName('current')[0];22 -1 }-1 20 var _current = function() { -1 21 return container.querySelector('.current'); -1 22 }; 23 2324 -1 function _next() {25 -1 var tracks = container.getElementsByClassName('track');-1 24 var _next = function() { -1 25 var tracks = container.querySelectorAll('.track'); 26 26 var current = _current();27 -1 for (var i=0; i<tracks.length-1; i++) {-1 27 for (var i = 0; i < tracks.length - 1; i++) { 28 28 if (tracks[i] === current) {29 -1 return tracks[i+1];-1 29 return tracks[i + 1]; 30 30 } 31 31 }32 -1 }-1 32 }; 33 3334 -1 function unselect() {-1 34 var unselect = function() { 35 35 var current = _current(); 36 36 if (current) { 37 37 current.classList.remove('current'); 38 38 dispatchEvent('unselectTrack', current.textContent); 39 39 }40 -1 }-1 40 }; 41 4142 -1 function select(element) {-1 42 var select = function(element) { 43 43 if (element) { 44 44 element.classList.add('current'); 45 45 dispatchEvent('selectTrack', element.textContent); 46 46 }47 -1 }-1 47 }; 48 4849 -1 function load(track) {-1 49 var load = function(track) { 50 50 unselect(); 51 51 if (track) { 52 52 select(track); @@ -54,9 +54,9 @@ function init_xiply(container) { 54 54 player.title = track.textContent; 55 55 player.play(); 56 56 }57 -1 }-1 57 }; 58 5859 -1 function loadNext() {-1 59 var loadNext = function() { 60 60 var next = _next(); 61 61 if (next) { 62 62 load(next); @@ -65,7 +65,7 @@ function init_xiply(container) { 65 65 player.src = null; 66 66 player.title = null; 67 67 }68 -1 }-1 68 }; 69 69 70 70 container.addEventListener('click', function(e) { 71 71 if (e.target.classList.contains('track') && e.button === 0) {