而不是使用$(this)我还能使用什么?

时间:2017-05-10 18:47:46

标签: jquery html

我想要编辑以下代码:

$('.tab').click(function() {
    $(this).addClass('active').siblings().removeClass('active');
});

我没有使用$(this),为什么我不能执行以下操作:

$('.tab').click(function() {
    $('.tab').click(function().addClass('active').siblings().removeClass('active');
});

如果这种情况永远不会起作用,我怎样才能重新创建初始代码而不必使用$(this)

2 个答案:

答案 0 :(得分:1)

不完全确定为什么要这样做,但这是一种避免使用“this”的方法。

$(".tab").click(function(ev){
    $(ev.currentTarget).addClass('active').siblings().removeClass('active');
});

答案 1 :(得分:0)

$('.tab')指的是所有元素,其中class =" tab",$(this)指的是带有类的 one 元素="标签"刚刚点击过。

有关jQuery中this的更多信息,请参阅jQuery: What's the difference between '$(this)' and 'this'?