Обработчик событий jQuery .live не работает с несколькими классами

#jquery

#jquery

Вопрос:

Этот код добавляет текст, который понравился внутри div.gdt-starrating :

 $("a.gdt-starrating").live("click", function() {
    $("div.gdt-starrating").text("liked");
});
  

Но этот код не работает (текст не добавляется в div.gdt-starrating :

 $("a.gdt-starrating").live("click", function() {
    $(".gdup div.gdt-starrating").text("liked");
});
  

Перед нажатием a.gdt-starrating :

 <div id="gdsr_thumb_197_a_up" class="gdt-size-20 gdthumb gdup"><div class="gdt-starrating"></div></div>
  

После нажатия a.gdt-starrating :

 <div id="gdsr_thumb_197_a_up" class="gdt-size-20 gdthumb gdup"><a class="gdt-starrating"></div></div>
  

Почему добавление .gdup заставляет вещь не работать?

(Извините за название, но я не совсем уверен в техническом способе сказать это).

Комментарии:

1. div.gdt-starrating не существует, или .gdt-starrating не существует…

Ответ №1:

это правильный способ использования нескольких классов.

  $("div.gdt-starrating.gdup").text("liked");
  

если класс состоит из одного и того же элемента, вы не разделяете пробелом, а объединяете по идентификатору, как указано выше