$(this)的值随确认而变化

时间:2013-05-18 03:07:39

标签: jquery

我想知道为什么$(this)没有像我期待的那样工作?在下面的代码中,单击“删除图像”时没有任何反应。如果您注释掉确认语​​句,则单击“删除图像”时背景将变为绿色。你知道为什么吗?由于确认声明,似乎$(this)指向其他内容。提前谢谢!

<a href="#" class='thumbnail the-one delete-file'><i class="icon-remove"></i>Remove Image</a>

$('.the-one').click(function(){
    if(confirm("What do you say?")) { return true;} else {return false;}
    $(this).css("background", "green");

});

2 个答案:

答案 0 :(得分:5)

因为您之前有returnreturn之后的所有内容都无法运行。

答案 1 :(得分:5)

您在设置css之前返回,因此该行未被执行。尝试:

$('.the-one').click(function(){
    if (confirm("What do you say?")) { 
        $(this).css("background", "green");
        return true;
    } else {
        return false;
    }
});