2015-07-21 63 views
0

我想找到有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);   

     }); 
}); 

回答

3

您需要使用dojo/NodeList-traverse提供的方法closest

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

您可以尝试以下操作。

// Assuming there is only one element of class site-map-section 
var parentCategory = query('.site-map-section',node)[0].parentNode; 

,如果你想比你的需要,要求dojo/NodeList-traverse使用父()函数。你的代码将会比

var parentCategory = query('.site-map-section',node).parent(); 
+1

请注意,要求是“父元素有css类'.site-map-section'”。所以'.parent()'是不够的 – ben

+0

我对直接父母不感兴趣。我希望层次结构中的父级具有类名“site-map-section”。 – DonX