JavaScript: implementare il metodo insertAfter()

JavaScript: implementare il metodo insertAfter()

jQuery implementa un comodo metodo insertAfter() per inserire un elemento dopo un altro elemento di riferimento. Purtroppo il DOM che viene implementato da JavaScript non dispone di un metodo analogo nativo. Fortunatamente possiamo implementarlo noi.

Sapendo che il DOM dispone di un metodo insertBefore() possiamo utilizzare questo metodo per i nostri scopi, cambiando però il nodo di riferimento:


function insertAfter(parent, node, referenceNode) {
    parent.insertBefore(node, referenceNode.nextSibling);
}

Ecco un esempio pratico:


var element = document.createElement('div');
element.id = 'after';
element.appendChild(document.createTextNode('After'));


insertAfter(document.body, element, document.getElementsByTagName('p')[0]);​

Potete visionare l'esempio finale in questa pagina.

Torna su