我想找到当前节点的css类“.site-map-section”的父元素。有人可以帮我解决这个问题吗?
示例:
require(["dojo/dom-prop", "dojo/query", "dojo/dom", "dojo/on", "dojo/NodeList-dom"], function (domProp, query, dom, on) {
query('.footer .site-map a').forEach(function (node) {
var parentCategory = query(node).parent('.site-map-section');
console.log(parentCategory);
});
});
答案 0 :(得分:3)
您需要使用closest
提供的方法dojo/NodeList-traverse
。
require(["dojo/dom-prop", "dojo/query", "dojo/dom", "dojo/on", "dojo/NodeList-dom", "dojo/NodeList-traverse"], function (domProp, query, dom, on) {
query('.footer .site-map a').forEach(function (node) {
var parentCategory = query(node).closest('.site-map-section');
console.log(parentCategory);
});
});
有关详细信息,请参阅: http://dojotoolkit.org/reference-guide/1.10/dojo/NodeList-traverse.html#closest
答案 1 :(得分:-1)
您可以尝试以下方法。
// Assuming there is only one element of class site-map-section
var parentCategory = query('.site-map-section',node)[0].parentNode;
如果要使用parent()函数,则需要dojo/NodeList-traverse
。你的代码不是
var parentCategory = query('.site-map-section',node).parent();