我喜欢使用一个或多个jQuery对象的返回值将它们添加到。
var f = function() {
var a = $('<div class="a" />');
// do someting awesome
return a;
};
使用两个s的正确示例:
var f = function() {
var ret = $('<div class="a" /><div class="b" />');
// do something spectecular
return ret;
};
问题是我需要在函数内部分隔这两个对象,这不是正确的代码:
var f = function() {
var a = $('<div class="a" />'),
b = $('<div class="b" />'),
ret = a+b;
// do something fabulous
return ret;
}
答案 0 :(得分:10)
您可以使用jQuery .add()
method:
return a.add(b);
来自文档:
给定一个表示一组DOM元素的jQuery对象,.add()方法从这些元素的并集和传递给方法的元素的构造中构造一个新的jQuery对象。
答案 1 :(得分:0)
我刚刚为自己的问题找到了解决方案:
var f = function() {
var a = $('<div class="a" />'),
b = $('<div class="b" />'),
ret = $.extend({}, a);
ret.push(b[0]);
// do something fabulous
return ret;
}
也许你有更好的解决方案?你知道它看起来不是很好。
答案 2 :(得分:0)
检查出来:
var $bindDivs = $.merge( $( '#div1' ), $( '#div2' ) );