Вы можете привязать к DOMNodeInserted
событию, но имейте в виду, что вы потеряете поддержку IE8 и старше, когда вы делаете это:
$(document).on('DOMNodeInserted', '.my-element-class', function() {
$(this).css({ backgroundColor : 'red' });
});
Вот документацию MDN для событий, смотрите в разделе «Мутация События»: https://developer.mozilla.org/en/DOM/DOM_event_reference
Хотя элемент делает существовать после того, как вы добавите его в DOM, так что вы, вероятно, пытается выбрать его неправильно:
$('body').append('<div>My New Div!</div>').children().last().css({ backgroundColor : 'red' });
Вот демо, показывая, что вы можете выбрать элемент непосредственно после добавления его в DOM: http://jsfiddle.net/AH6RG/
Обратите внимание, что этот код использует тот факт, что .append()
добавляет новый элемент в качестве последнего ребенка контейнера он добавил к. Поэтому вы можете выбрать его, выбрав детей в контейнере, а затем выбрав последний ребенок.
Это не так, '.append()' происходит немедленно, и элементы доступны немедленно. –
необходимо отправить код ... если вы добавите, а затем вызовите функцию, он найдет элемент, если он существует – charlietfl
* «... после появления элемента» * - и элемент родился ;-) –