@advancesss

Как найти и изменить динамический элемент в Javascript?

На странице динамически добавляются элементы.
Нужно к динамически созданным элементам добавить класс. Если при статических элементах я делаю так:

var li = document.querySelector("elementname");
li.style.classList.add("newclass");


То как это сделать при динамических создаваемых элементах ?
  • Вопрос задан
  • 1100 просмотров
Решения вопроса 1
@advancesss Автор вопроса
Реализовал так, работает.

$.ajaxSetup({
  complete: function() {
    
	$("element").addClass('newclass');
  }
})
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
sergiks
@sergiks Куратор тега JavaScript
♬♬
MutationObserver позволяет следить за изменениями DOM.

Это для «тяжёлых случаев», где вы никак не влияете на код, добавляющий элементы.
Ответ написан
Комментировать
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
1) Генерировать событие при добавлении новых элементов. Ну и по этому событию делать то, что вы делаете
2) setInterval'ом каждые N-секунд искать новые элементы и добавлять класс.
Ответ написан
hzzzzl
@hzzzzl
в том куске, где они "динамически добавляются" (приходит от сервера ответ с готовым html?), там же им сразу добавлять класс?

div.innerHTML += responseFromServer

[...div.querySelectorAll('.some-class-name')].forEach(d => d.classList.add('new-class-name'))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы