1 заметка с тегом

nextSibling РСС

6 декабря 2008, 22:55

Javascript: вставить тег перед каким-то определённым тегом (или после)

Для этого нужно всего лишь найти тег и по ветке DOM ( parentNode ) вставить перед тегом ( insertBefore ) , тег (созданым, например, через document.createElement ). Что бы вставить после определённого тега, к его id приписываем .nextSibling

Например:
id.parentNode.insertBefore(optg,id);// вставить тег перед тегом
id.parentNode.insertBefore(optg,id.nextSibling);// вставить тег после тега



Если очень захотеть, то можно расширить Node.prototype и добавить полезную функцию insertAfter, что бы часто не писать nextSibling, заодно мы проверяем есть ли парент элемент, если нет, то создаём ;)
Node.prototype.insertAfter = function(newNode, refNode) {
	return refNode.nextSibling 
	? this.insertBefore(newNode, refNode.nextSibling) 
	: this.appendChild(newNode);
}
insertBefore   nextSibling