Сначала ответьте на ваш вопрос: Нет, вы не можете, не так, как вы хотели.
Может быть, немного поздно, чтобы ответить, но это мое решение, без jQuery, чистый javascript.
Первоначально он был написан для применения функции изменения размера к textareas после загрузки DOM и при включении.
Точно так же, как вы могли бы использовать его для выполнения чего-либо с (всеми) div-ами или только с одним, если указано, например, так:
document.addEventListener("DOMContentLoaded", function() {
var divs = document.querySelectorAll('div'); // all divs
var mydiv = document.getElementById('myDiv'); // only div#myDiv
divs.forEach( div => {
do_something_with_all_divs(div);
});
do_something_with_mydiv(mydiv);
});
Если вам действительно нужно что-то сделать с div, загруженным после загрузки DOM, например, после вызова ajax вы могли бы использовать очень полезный хак, который легко понять, и вы найдете его ... работа с элементами перед тем как дом готов ... . Он говорит «до того, как DOM будет готов», но работает блестяще, точно так же, после вставки AJAX или js-appendChild - независимо от div. Вот код с некоторыми небольшими изменениями в моих потребностях.
1010 * CSS *
.loaded { // I use only class loaded instead of a nodename
animation-name: nodeReady;
animation-duration: 0.001s;
}
@keyframes nodeReady {
from { clip: rect(1px, auto, auto, auto); }
to { clip: rect(0px, auto, auto, auto); }
}
Javascript
document.addEventListener("animationstart", function(event) {
var e = event || window.event;
if (e.animationName == "nodeReady") {
e.target.classList.remove('loaded');
do_something_else();
}
}, false);