是否有一种简单的方法来获取与Jquery的查询匹配的节点列表(包括给定节点)?
我考虑过如下使用.find方法:
var getNodes = function(dom, query){
var nodes = $(dom).find(query || '*');
nodes.splice(0,0,dom);
return nodes;
}
奥利弗
答案 0 :(得分:3)
如果你想搜索由dom
组成的集合及其内容以查找与查询匹配的元素,那么你可以
$(dom).find(query).add($(dom).filter(query))
或
$(dom).find(query).addBack().filter(query);
一个更简单的(如果有很多孩子,则会更慢)
$(dom).find('*').addBack().filter(query);
答案 1 :(得分:0)
jQuery中$()
任何内容的结果都是jQuery
的实例,而不是JavaScript数组。你能做的就是这样:
var nodes = [ dom ];
var found = $(dom).find(query || '*');
$.each(found, function(item) { nodes.push(this); });