tmman
@tmman
Обои из семерки наконец-то пригодились!

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

Есть код:
<div id="results" class="select-your-time">
  <div class="elem" onclick="$('#qtime').prop('value', '11:30');">
      11:30
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '13:00');">
      13:00
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '14:30');">
      14:30
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '16:00');">
      16:00
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '17:30');">
      17:30
  </div>
  <div class="elem active" onclick="$('#qtime').prop('value', '19:00');">
      19:00
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '20:30');">
      20:30
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '22:00');">
      22:00
  </div>
  <div class="elem" onclick="$('#qtime').prop('value', '23:30');">
      23:30
  </div>


Некий скрипт при клике добавляет в div класс active. Мне же нужно "поймать" этот момент и понять по значению внутри, показывать пользователю другую цену или нет? То есть, когда div'у припишется класс active, вызвать код, который сделает что-то (пусть пока в консоль пишет).

Вот этот код, который не может у меня отловить клик. Как это сделать?
$('.select-your-time > div.active').click(function(){
        console.log('clicked');//на время дебага


p.s. $('.select-your-time > div.active') -- может быть, тут вообще не классы надо отлавливать вовсе?
  • Вопрос задан
  • 249 просмотров
Пригласить эксперта
Ответы на вопрос 1
@tyzberd
если класс добавляет другой код при клике, тогда вам нужно добавить
$('.select-your-time > div').click(function(){
  if($(this).hasClass( "active" )){
    console.log('clicked');
  }      
});
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы