在jquery中,' .add()'之间的区别是什么?和',' (逗号)?

时间:2017-06-03 21:55:34

标签: jquery

我知道许多事情可以用不同的方式完成,其中没有一方必须总是优于其他方面;因此,有多种方法可以做到这一点通常是好的:但是,jQuery' .add()'方法和jQuery逗号选择器只是两种方式来做同样的事情或彼此不同(在这个特别用作选择器)?

 $("p").add("span").css("background", "yellow");
 $("p, span").css("background", "yellow");

https://jsfiddle.net/rudijuri/gg3vfmcp/3/

(对不起jsfiddle的外部链接,但是代码片段不能使用触摸设备,就像我现在一样)

2 个答案:

答案 0 :(得分:1)

基本上他们是一样的。正如multiple selectors(“selector1, selector2, selectorN”))上的jQuery文档所说(强调我的):

  

您可以指定任意数量的选择器组合成一个   结果。这种多表达组合子是一种有效的方法   选择不同的元素。中的DOM元素的顺序   返回的jQuery对象可能不一样,因为它们将在   文件订单。 这个组合子的替代品是.add()   方法

答案 1 :(得分:1)

在这种情况下,如果要选择必须插入的p对象中的跨距,请将其用作并行选择器或p和span对象:

$("p > span").css("background", "yellow");

$("p").find("span").css("background", "yellow");