多个选择器使用此和变量

时间:2014-10-11 19:02:00

标签: javascript jquery

我在网站上创建了一个快速标签部分。点击后,jQuery抓取数据幻灯片并使用该信息查找匹配的ID并应用一个类。

<div class="service-link" data-slide="#post-123">Click Me</div>
当我使用'this'并且在同一行上定位时,

'target'不会将活动类应用于它。

$(this, target).addClass("active");

如果我使用两行,它可以工作。有谁知道我为什么不能使用一条线?

$(this).addClass("active");
$(target).addClass("active");

完整工作脚本 -

$(".service-link").click(function(){
    var target = $(this).data("slide");
    $(".service-type-slide, .service-link").removeClass("active");
    $(target).addClass("active");
    $(this).addClass("active");
})`

2 个答案:

答案 0 :(得分:1)

您可以使用add()方法来实现此目的:

$(this).add(target).addClass("active");

Example Here


你在尝试:

$(this, target).addClass("active");

基本上等同于使用:

$(target).find(this).addClass("active");

这就是为什么它不起作用。

您可以看到演示此here的示例。

答案 1 :(得分:0)

我认为:

   $(this, target)

将尝试在目标上下文中找到节点元素( this 引用)。但它不会找到它,因为目标不包含该元素