2015-05-03 3 views
2

Когда я использую ниже, я не могу получить jQuery this, чтобы скрыть элемент.jQuery методы, не работающие над 'this' внутри обработчика события

$('.purplePanda').click(function(e){ 
    this.hide(); 
}); 

Я получаю эту ошибку:

Uncaught TypeError: this.hide is not a function

+1

'this' не является объектом jQuery, поэтому вы не можете использовать jQuery-методы на нем ...' $ (this) 'преобразует его – charlietfl

+0

' .purplePanda' является div –

+1

Подождите, это @StackOverflow пытается ответить некоторые простые вопросы, которые являются общими ошибками ранних разработчиков? – Pachonk

ответ

6

Replace

this.hide(); 

с

$(this).hide(); 

Таким образом, ваша функция должна быть как

$('.purplePanda').click(function(e){ 
    $(this).hide(); 
}); 

Смотрите официальную документацию here

+1

Ваш период не в том месте в примере полного кода @lal – zmanc

+0

Спасибо, что указали @ zmanc..или мой ответ .. – Lal

2

изменить код от:

$('.purplePanda').click(function(e){ 
    this.hide(); 
}); 

Для этого:

$('.purplePanda').click(function(e){ 
    $(this).hide(); 
}); 

должно работать.

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