2014-11-13 4 views
0

Я знаю, что я действительно понимаю использование this в jQuery/JS, но это показывает мне, что я ошибаюсь. Я хотел бы добавить класс на DOM элемента, и я использовал это:jQuery this inside event

$("#content").on("click",function(){ 
    this.addClass("bonus"); 
}); 

Но ничего не произошло, поэтому я изменил вторую строку кода и она работала:

$("#content").addClass("bonus"); 

НЕ СЛЕДУЕТ this в первом примере обратитесь к $("#content")?

ответ

2

this относится к элементу DOM, который был сгенерирован. Это не объект jQuery, а родной объект DOM.

Вам нужно сделать:

$(this).addClass("bonus"); 
3

this сам по себе является родным DOM элемент, вам нужно $(this), который является элементом JQuery с помощью метода addClass