Задать вопрос
shevgeny
@shevgeny
Дизайнер-верстальщик и художник по жизни :)

Как выполнять действия над элементами с присвоенными классами скриптом?

Есть несколько элементов:
<div class="name1"></div>
<div class="name2"></div>
<div class="name3"></div>
...
<div class="nameN"></div>


При нажатии на кнопку, cкрипт некоторым из элементов назначает дополнительный класс, к примеру "active", а после, нужно произвести действие над элементами с этим самым классом "active". Почему-то не получается. Не знаток JS, но подозреваю, что проблема кроется именно в том, что действие осуществляется над теми элементами, классы которых назначены скриптом, а изначально отсутствовали. Как решить сей вопрос?
  • Вопрос задан
  • 2504 просмотра
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Grag
$(function(){
     $( "#foo" ).bind( "click", function() {
          alert( "User clicked on 'foo.'" );
     });
});

Оч смешно...
Не знаток JS


Оч догадливо
действие осуществляется над теми элементами, классы которых назначены скриптом, а изначально отсутствовали


Учи ангийский, и JavaScript. На нем быстрее, а если знать нормально - то и удобнее.
Ответ написан
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Если я правильно понимаю, то прочтите вот этот вопрос Какая разница между jQuery .bind() .live() .delegate() и .on()?
и ответ, отмеченный решением. Используйте on.
Распространенная ошибка состоит в том, что событие на элемент навешивается до того, как он появился в DOM. В этом случае и следует использовать on с делегированием или навешивать событие снова после появления элемента в DOM.
По ссылке прочтите все, особенно «Прямая и делегированная обработка (параметр selector)»
jquery.page2page.ru/index.php5/On
Ответ написан
qmax
@qmax
программер
Судя по описанию - решается чтением документации по jquery. Раздел селекторы.
Ответ написан
Ваш ответ на вопрос

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

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