Событие хороши, но потому, что не родное события для появления событие требуется знать, когда элемент добавляется так, что событие может быть запущено вручную. Вы можете использовать опрос, чтобы проверить появление чего-либо и выполнить действие, когда оно появится. Это отлично подходит для контента, который добавляется вне вашего контроля, например, из пользовательского ввода, ajax или других программ.
setInterval(function() {
$('.my-element-class:not(.appeared)')
.addClass('appeared')
.each(function() {
console.log("here I am!")
});
}, 250);
Это будет проверять внешний вид элемента по имени класса (или любых других критерии селекторных вы снабжающие) 4 раза каждый второй и запустить код, когда появится новый пункт. После просмотра элемента добавляется класс .appeared для предотвращения повторного обнаружения экземпляра. Если вы хотите протестировать только один вид, вы можете упростить и закрыть опрос после обнаружения.
var testAppearTmr = setInterval(function() {
if ($('.my-element-class').length) {
clearInterval(testAppearTmr);
console.log("here I am!")
}
}, 250);
JQuery appear плагин построен вокруг этих методов и имеет гораздо больше возможностей, такие как тесты, если элемент находится в области просмотра, но если все, что вы хотите сделать, это тест на несколько пунктов добавляется к домику приведенный выше код намного шире, чем плагин.
Как вы определяете «когда оно появляется»? т. е. когда он загрузился в DOM или когда он стал видимым некоторым другим кодом jQuery? – BenM
Или когда элемент видимый сам, но не в видовом окне, и пользователь прокручивал его? – Tommi
Извините, я имел в виду, когда он был полностью добавлен в DOM –