2013-05-17 3 views
0

На моем веб-сайте у меня есть кнопки, которые загружаются через AJAX. Как я могу гарантировать, что моя операция jQuery hide() применяется ко всем кнопкам, которые вставляются в DOM в будущем? Насколько я знаю, on() работает только при регистрации таких событий, как щелчок, например.Как связать поведение с новыми элементами Dom?

<button class="myButtton">Button</button> 

JavaScript:

$(".myButton").hide(); 
+0

Я не понимаю, что последнее предложение имеет отношение к этому вопросу, но не забудьте указать ваш селектор:. '$ (» MyButton ") .hide();' Также вы можете использовать .hide() для элементов перед их вставкой, если хотите. Оберните в jQuery, .hide() и '.appendTo()' или аналогичные. – Atle

+0

Почему бы вам не называть '$ (". MyButton "). Hide();' после того, как вы вставляете новые элементы ... – War10ck

+0

Поскольку я не хочу загружать JQuery conten в свой код Ajax – confile

ответ

1
.myButton { 
    display: none; 
} 

При добавлении содержания применять myButton класса к элементу

0

вы можете использовать функцию JQuery .Ы() Это относится поведение также к элементу, которые добавлены к йоту позже.

$(document).on('click','.elementClass' , function(e){ 
    // do something 
}); 
+0

Я написал, что я делаю не хотите связывать событие click. Я хочу связать после вставки в dom функции, такие как hide() – confile

0

Проще всего использовать css для скрытой кнопки при вставке. jQuery.hide() в основном в css-дисплее: none. http://api.jquery.com/hide/.

.myButton { 
    display: none; 
} 

Тогда, когда вы готовы показать его, просто используйте $ (". MyButton"). Show(); aka display: block.

Смежные вопросы