我有两个相同的(?)代码片段:
var x = document.createElement('div');
var y = document.createElement('div');
var z = $().add(x).add(y);
console.log(z);
Run Code Online (Sandbox Code Playgroud)
和
var x = document.createElement('div');
var y = document.createElement('div');
var z = $();
z.add(x);
z.add(y);
console.log(z);
Run Code Online (Sandbox Code Playgroud)
第一个例子告诉我:+ Object [div,div]
和其他:对象[]
为什么???
小提琴:http://jsfiddle.net/d3x7gsLu/
更神奇:http://jsfiddle.net/d3x7gsLu/1/
UPD:
第一个正确答案:https://stackoverflow.com/a/31798686/3558278
现在我的问题:
如何在没有创建新的jQuery对象的情况下(将元素附加到内部集合中)?因为在实际中我有很多很多元素.
UPD2:
在这里回答:聚合jQuery对象?
谢谢大家!
来自jQuery API:
给定一个表示一组DOM元素的jQuery对象,.add()方法从这些元素的并集和传递给方法的元素构造一个新的jQuery对象..add()的参数几乎可以是$()接受的任何内容,包括jQuery选择器表达式,对DOM元素的引用或HTML片段.
这意味着您的示例不相等,等于您的第二个示例应如下所示:
var x = document.createElement('div');
var y = document.createElement('div');
var z = $();
z = z.add(x);
z = z.add(y);
console.log(z);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |