jQuery,使用字符串和变量向匹配元素集添加元素

时间:2012-12-13 09:57:45

标签: javascript jquery

我有一个click事件,我想在当前单击的元素和另一个元素中添加一个类,我希望在一行中完成。

我尝试了类似

的内容

JS档案

$('div').click(function(){
    $(this, 'span').css('background','yellow');
    // could usethe following way but it's not DRY
    // $(this).css('background','yellow');
    // $('span').css('background','yellow');
})​;

HTML文件

<div>
    div
</div>
<span>
    span
</span>​

以下是a fiddle例如

但它不起作用,所以我怎么能不重复css方法。

3 个答案:

答案 0 :(得分:3)

您可以使用.add(selector)方法:

$(this).add('span').css('background','yellow');

答案 1 :(得分:1)

您可以将<span>元素添加到$(this) jQuery实例:

$(this).add( $('span') ).css('background', 'yellow');

甚至:

$(this).add('span').css('background', 'yellow');

http://jsfiddle.net/Hhqc8/7/

答案 2 :(得分:0)

尝试siblings():

$('div').click(function(){
    $(this).siblings('span').css('background','yellow');
})​

实施例: http://jsfiddle.net/Hhqc8/6/