![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| JAYBE |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.3.2008 Репутация: нет Всего: 0 |
Добрый день.
В чем разница между document.getElementsByTagName('a') и document.querySelectorAll("a")? Дело в том, что в таком коде:
После добавления нового элемента ссылки в документ элемент _1 уже выдаёт ноделист из 3-х элементов, и _2 также из 2-х. |
|||
|
||||
| Aliance |
|
|||
![]() I ♥ <script> ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6418 Регистрация: 2.8.2004 Где: spb Репутация: 17 Всего: 137 |
Потому что getElementsByTagName - это не просто массив, а ссылка на массив выбранных нод (т.н. live NodeList). А querySelectorAll - простой массив (static NodeList).
Код выше демонстрирует, что цикл выполнится бесконечное число раз, т.к. массив divs постоянно будет дополняться новым элементом. К слову, getElementsByTagName работать будет быстрее в общих случаях, т.к. он заново не строит дерево элементов, а берет его из кеша документа. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |