Kind-Elemente durchmischen (JavaScript)

Beschreibung

Dieses JavaScript mischt alle Kind-Elemente eines DOM-Elements zufällig durch.

Benutzung

Einfach die Funktion shuffleChildren() mit dem Zielelement (das, unter dem die Kind-Elemente sich befinden) aufrufen.

Beispiel

In diesem Beispiel werden alle Zeilen einer Tabelle, die die ID „targetElement“ trägt, beim Seitenaufruf durchgemischt.

window.onload = function () {
    shuffleChildren(document.querySelector('#targetElement tbody'));
};

Code

function shuffleChildren (targetElement) {
    var elements = [];
    while (targetElement.firstChild) {
        elements.push(targetElement.firstChild);
        targetElement.removeChild(targetElement.firstChild);
    }
    elements.sort(function() {
        return .5 - Math.random();
    });
    elements.forEach(function (elem) {
        targetElement.appendChild(elem);
    });
}