Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.05.2010, 22:09
Аспирант
Отправить личное сообщение для Black_Sun Посмотреть профиль Найти все сообщения от Black_Sun
 
Регистрация: 29.04.2010
Сообщений: 68

Как создать теги вокруг найденных классов
Вот такая ситуация,
<div class="first">
		<div class="second">
                 ТЕКСТ			
		</div>
		<span class="txt">ТЕКСТ</span>
		<span class="txt">ТЕКСТ</span>
</div>


Нужно с помощью javascript добавить вокруг ещё один div, т.е.
<div>
<div class="first">
......................................
</div>
</div>

Пробовал так
var a=document.getElementsByClassName('first')[0];
 test=document.createElement('div');
 test.innerHTML='<div>&nbsp;';
 a.parentNode.insertBefore(test,a);

 test2=document.createElement('div');
 test2.innerHTML='</div>&nbsp;';
 a.parentNode.insertBefore(test2,a.nextSibling);
не вышло, какой бы я не писал document.createElement он после innerHTML закрывает его и сами внутри innerHTML тоже закрывает, хелп.

В общей сложности нужно создать такой как бы слой для второго div, т.е. сначала слой-затем div-first-затем div-second

Последний раз редактировалось Black_Sun, 11.05.2010 в 22:11.
Ответить с цитированием
  #2 (permalink)  
Старый 11.05.2010, 22:48
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

var element = document.getElementsByClassName("first")[0];
var wrapper = document.createElement("div");
element.parentNode.insertBefore(wrapper, element);
wrapper.appendChild(element);


в IE есть специальный метод applyElement
Ответить с цитированием
  #3 (permalink)  
Старый 11.05.2010, 23:08
Аспирант
Отправить личное сообщение для Black_Sun Посмотреть профиль Найти все сообщения от Black_Sun
 
Регистрация: 29.04.2010
Сообщений: 68

Octane, кул, спс, но также нашёл как альтернитаву
var element = document.getElementsByClassName("first")[0];
var wrapper = document.createElement("div");

wrapper.innerHTML='<div>'+element.innerHTML+'</div>';

element.parentNode.insertBefore(wrapper, element);

element.parentNode.removeChild(element); //удаление двойника :)
но ваш лучше

Последний раз редактировалось Black_Sun, 11.05.2010 в 23:16.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать iframe, и отправлять xmlhttp запросы с него? Atilla AJAX и COMET 12 23.03.2010 17:58
Как текст из responseText преобразовать в теги? Бобр AJAX и COMET 24 26.02.2010 04:37
как можно создать iframe со скриптами GOll Общие вопросы Javascript 2 05.05.2009 11:32
как создать елемент с вложеными елементами scuter Events/DOM/Window 11 14.05.2008 16:15