![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| 4epT |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 784 Регистрация: 13.8.2007 Репутация: нет Всего: 3 |
Здравствуйте! Имеется html страница, на которой N div элементов, у каждого может быть вложенный div. Наприем вот такая страница:
Нужно нативным JS скриптом удалить эти дивы из DOM ... Подскажите пожалуйста в какую сторону смотреть ) |
|||
|
||||
| $дмитрий |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1037 Регистрация: 19.6.2004 Репутация: 2 Всего: 45 |
Удалить на странице все div? Тогда примерно так
|
|||
|
||||
| Amphiluke |
|
||||||
|
☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 35 Всего: 112 |
Тут следует учесть, что родительским элементом div`а не обязательно является body. Такой скрипт потенциально способен выбросить исключение при попытке удалить чужой дочерний элемент. Поэтому тело цикла должно быть примерно таким:
Добавлено через 6 минут и 21 секунду Более того, ваш код потерпит неудачу для случая нескольких рядом стоящих div`ов. Это связано с тем, что метод getElementsByTagName возвращает «живую» коллекцию, которая меняется «на лету» при удалении одного из элементов коллекции, так что инкрементирующийся счетчик цикла пропустит некоторые элементы: Вот проверьте на такой конструкции:
Добавлено через 10 минут и 20 секунд Вот более стабильная реализация:
|
||||||
|
|||||||
| $дмитрий |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1037 Регистрация: 19.6.2004 Репутация: 2 Всего: 45 |
Все правильно пишешь, поддерживаю
|
|||
|
||||
| 4epT |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 784 Регистрация: 13.8.2007 Репутация: нет Всего: 3 |
Вот так сделал =) Работает ... Но боюсь что на большом DOM будет долго работать
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |