@DickieDick

Как выполнить код при появлении в DOM элемента, соответствующего селектору?

Здравствуйте! Мне нужно активировать на странице tooltip'ы, выполнив всего одну строчку кода:
$('[data-toggle="tooltip"]').tooltip();

Однако блок, к которому это все должно применяться, по всей видимости, подгружается посредством ajax, так как выполнение этого кода по событию "ready" не дает результата.

Если бы мне нужно было привязать обработчик события "click", то это было бы намного проще, скажем:
$('body').on('click', '[data-toggle="tooltip"]', function() {
...
});


В поисках решения я надеялся найти на просторах интернета что-нибудь похожее на это:
$('body').on('DOMElementAdded', '[data-toggle="tooltip"]', function() {
...
});


Но в jQuery, насколько понимаю, так делать нельзя. Была только инфа про различные дополнения к jQuery, но подключать что-то стороннее не хочется. Еще встретил описание вот такого API:
https://developer.mozilla.org/en-US/docs/Web/API/M...
но не слишком ли это замороченно, разве нет более компактных и простых вариантов кода для такой ситуации, в jQuery или стандартном JS? Сможет ли кто-нибудь просветить, какой способ решения этой задачи оптимален в настоящее время?
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
hzzzzl
@hzzzzl
таймаут на 5 секунд поставить, в надежде что юзер не побежит сразу смотреть все тултипы? :)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Benzin102
@Benzin102
Shitcoder
Обновляй тултипы после всех аяксов https://jquery-docs.ru/ajaxComplete/ и всё
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы