JQuery:使用.add()向现有匹配集添加更多元素

JoJ*_*Dad 2 jquery add selector

这个问题可能有一个简单的答案,但对于我的生活,我不明白为什么以下两种使用$ .add()的方法给了我不同的结果集.

var toBeSorted;

if (contextEl.hasClass("lv"))
    toBeSorted = $(".lv", contextEl).add(contextEl);
else
    toBeSorted = $(".lv", contextEl);
Run Code Online (Sandbox Code Playgroud)

var toBeSorted = $(".lv", contextEl); 

if (contextEl.hasClass("lv"))
    toBeSorted.add(contextEl);
Run Code Online (Sandbox Code Playgroud)

当IF语句为真时,我总是在顶部代码段中获得一个元素,而不是在底部代码段中(即contextEl在结果集中 - 这正是我想要的).我不明白为什么底部方法调用toBeorted.add(contextEl)的方法不起作用?

非常感谢任何指针或建议.

谢谢!

Exp*_*lls 7

您需要在.add()返回之后编写生成的对象,toBeSorted就像在第一个代码块中一样.

toBeSorted = toBeSorted.add(contextEl);
Run Code Online (Sandbox Code Playgroud)