Jquery and Get traversing API

Jquery and Get traversing API

本文关键字:API traversing Get and Jquery      更新时间:2023-09-26

有没有一种简单的方法可以获得与Jquery查询匹配的节点列表(包括给定节点)?

我曾考虑过使用.find方法如下:

var getNodes = function(dom, query){
    var nodes = $(dom).find(query || '*');
    nodes.splice(0,0,dom);
    return nodes;
}

Olivier

如果您想在由dom及其内容组成的集合中搜索与查询匹配的元素,那么您可以执行

$(dom).find(query).add($(dom).filter(query))

$(dom).find(query).addBack().filter(query);

是一个更简单的方法(但如果有很多孩子,速度会慢一些)

$(dom).find('*').addBack().filter(query);

jQuery中$()的结果任何东西都是jQuery的实例,而不是JavaScript数组。你可以做的是这样的事情:

var nodes = [ dom ];
var found = $(dom).find(query || '*');
$.each(found, function(item) { nodes.push(this); });