Scroll Up
document.addEventListener('DOMContentLoaded', function () {
var shuffleBtn = document.getElementById('shuffle-playlist');
if (!shuffleBtn) return;
shuffleBtn.addEventListener('click', function () {
// Find the playlist container
var playlist = document.querySelector('.wp-playlist-tracks');
if (!playlist) {
alert('Playlist not found. Please check the selector.');
return;
}
// Get all tracks as an array
var tracks = Array.from(playlist.querySelectorAll('.wp-playlist-item'));
// Fisher-Yates shuffle
for (let i = tracks.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[tracks[i], tracks[j]] = [tracks[j], tracks[i]];
}
// Remove all tracks and re-append in shuffled order
tracks.forEach(track => playlist.appendChild(track));
// Optionally, play the first song after shuffling:
// Try simulating a click on the first song's link
setTimeout(function () {
var firstTrack = playlist.querySelector('.wp-playlist-item a.wp-playlist-caption');
if (firstTrack) firstTrack.click();
}, 300);
});
});
Scroll Up