<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Deerua about Coding: последние заметки с тегом &amp;laquo;nextSibling&amp;raquo;</title><link>http://deer.org.ua/keywords/nextsibling/</link><description></description><language>ru</language><generator>e2 (http://blogengine.ru/)</generator><item><title>Javascript: вставить тег перед каким-то определённым тегом (или после)</title><guid isPermaLink="true">http://deer.org.ua/2008/12/06/1/</guid><link>http://deer.org.ua/2008/12/06/1/</link><comments>http://deer.org.ua/2008/12/06/1/comments/</comments><description>Для этого нужно всего лишь &lt;a href="http://yass.webo.in/" linkredir=""&gt;&lt;i&gt;найти тег&lt;/i&gt;&lt;/a&gt; и по ветке DOM ( &lt;span class="hl-identifier"&gt;parentNode&lt;/span&gt; ) вставить перед тегом ( &lt;span class="hl-identifier"&gt;insertBefore&lt;/span&gt; ) , тег (созданым, например, через &lt;span class="hl-builtin"&gt;document&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;createElement&lt;/span&gt; ). Что бы вставить после определённого тега, к его &lt;span class="hl-identifier"&gt;id&lt;/span&gt; приписываем .&lt;span class="hl-identifier"&gt;nextSibling&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Например:&lt;br /&gt;&lt;pre&gt;&lt;span class="hl-identifier"&gt;id&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;parentNode&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;insertBefore&lt;/span&gt;&lt;span class="hl-brackets"&gt;(&lt;/span&gt;&lt;span class="hl-identifier"&gt;optg&lt;/span&gt;&lt;span class="hl-code"&gt;,&lt;/span&gt;&lt;span class="hl-identifier"&gt;id&lt;/span&gt;&lt;span class="hl-brackets"&gt;)&lt;/span&gt;&lt;span class="hl-default"&gt;;&lt;/span&gt;&lt;span class="hl-comment"&gt;// вставить тег перед тегом&lt;/span&gt;
&lt;span class="hl-identifier"&gt;id&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;parentNode&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;insertBefore&lt;/span&gt;&lt;span class="hl-brackets"&gt;(&lt;/span&gt;&lt;span class="hl-identifier"&gt;optg&lt;/span&gt;&lt;span class="hl-code"&gt;,&lt;/span&gt;&lt;span class="hl-identifier"&gt;id&lt;/span&gt;&lt;span class="hl-code"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;nextSibling&lt;/span&gt;&lt;span class="hl-brackets"&gt;)&lt;/span&gt;&lt;span class="hl-default"&gt;;&lt;/span&gt;&lt;span class="hl-comment"&gt;// вставить тег после тега&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;ul class="r1pxc"&gt;&lt;li&gt;&lt;a href="/samples/insert/index.html"&gt;&lt;b&gt;Посмотреть пример&lt;/b&gt;&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="/samples/insert/insert.zip"&gt;&lt;b&gt;Скачать пример (zip 4.7Kb)&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Если очень захотеть, то можно расширить &lt;b&gt;Node.prototype&lt;/b&gt; и добавить полезную функцию &lt;b&gt;insertAfter&lt;/b&gt;, что бы часто не писать &lt;b&gt;nextSibling&lt;/b&gt;, заодно мы проверяем есть ли парент элемент, если нет, то создаём ;) &lt;pre&gt;&lt;span class="hl-identifier"&gt;Node&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;prototype&lt;/span&gt;&lt;span class="hl-default"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;insertAfter&lt;/span&gt;&lt;span class="hl-default"&gt; = &lt;/span&gt;&lt;span class="hl-reserved"&gt;function&lt;/span&gt;&lt;span class="hl-brackets"&gt;(&lt;/span&gt;&lt;span class="hl-identifier"&gt;newNode&lt;/span&gt;&lt;span class="hl-code"&gt;, &lt;/span&gt;&lt;span class="hl-identifier"&gt;refNode&lt;/span&gt;&lt;span class="hl-brackets"&gt;) {
	&lt;/span&gt;&lt;span class="hl-reserved"&gt;return &lt;/span&gt;&lt;span class="hl-identifier"&gt;refNode&lt;/span&gt;&lt;span class="hl-code"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;nextSibling&lt;/span&gt;&lt;span class="hl-code"&gt; 
	? &lt;/span&gt;&lt;span class="hl-reserved"&gt;this&lt;/span&gt;&lt;span class="hl-code"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;insertBefore&lt;/span&gt;&lt;span class="hl-brackets"&gt;(&lt;/span&gt;&lt;span class="hl-identifier"&gt;newNode&lt;/span&gt;&lt;span class="hl-code"&gt;, &lt;/span&gt;&lt;span class="hl-identifier"&gt;refNode&lt;/span&gt;&lt;span class="hl-code"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;nextSibling&lt;/span&gt;&lt;span class="hl-brackets"&gt;)&lt;/span&gt;&lt;span class="hl-code"&gt; 
	: &lt;/span&gt;&lt;span class="hl-reserved"&gt;this&lt;/span&gt;&lt;span class="hl-code"&gt;.&lt;/span&gt;&lt;span class="hl-identifier"&gt;appendChild&lt;/span&gt;&lt;span class="hl-brackets"&gt;(&lt;/span&gt;&lt;span class="hl-identifier"&gt;newNode&lt;/span&gt;&lt;span class="hl-brackets"&gt;)&lt;/span&gt;&lt;span class="hl-code"&gt;;
&lt;/span&gt;&lt;span class="hl-brackets"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;hr /&gt;&lt;a href="http://deer.org.ua/2008/12/06/1/comments/"&gt;Комментарии&lt;/a&gt; к заметке&lt;br /&gt;&lt;br /&gt;Теги:&lt;br /&gt;&lt;a href="http://deer.org.ua/tags/javascript/"&gt;javascript&lt;/a&gt; &amp;gt; &lt;a href="http://deer.org.ua/tags/javascript/id/"&gt;id&lt;/a&gt; &amp;gt; &lt;a href="http://deer.org.ua/tags/javascript/id/parentnode/"&gt;parentNode&lt;/a&gt; &amp;gt; &lt;a href="http://deer.org.ua/tags/javascript/id/parentnode/insertbefore/"&gt;insertBefore&lt;/a&gt;&lt;br /&gt;&lt;a href="http://deer.org.ua/tags/javascript/"&gt;javascript&lt;/a&gt; &amp;gt; &lt;a href="http://deer.org.ua/tags/javascript/id/"&gt;id&lt;/a&gt; &amp;gt; &lt;a href="http://deer.org.ua/tags/javascript/id/nextsibling/"&gt;nextSibling&lt;/a&gt;</description><pubDate>Sat, 06 Dec 2008 22:55:23 +0200</pubDate></item></channel></rss>