在JQuery中,我使用parent()函数来获取任何元素的直接父级。在循环中像这样
$(本).parent();
我想在dojo中做同样的循环就是这样。
dojo.query(".entryURL").forEach(function(node, index, arr){
var url = dojo.attr(node, "href");
// I want to get the parent of node, which will be ofcourse diff for each iteration
});
有人请给我一个提示,我尝试使用parent.node我也试图像这样追加父母
dojo.place("<span style='color:green'>URL</span>",query(node).parent(), "last");
我在firebug中收到此错误
TypeError:_365.appendChild不是函数
光顾Aadam
答案 0 :(得分:0)
这里有一些问题:
dojo.place()
或dojo/dom-construct::place()
不符合dojo/NodeList
使用的dojo/query
API。而不是使用dojo/NodeList-manipulate
或dojo/NodeList-dom
等模块。由于您是jQuery用户,我建议使用dojo/NodeList-manipulate
,因为它模仿了jQuery API。parent()
方法,但只有在您加载dojo/NodeList-traverse
时才能使用该部分API。这是一个使用反馈的工作示例:
require(["dojo/query", "dojo/NodeList-traverse", "dojo/NodeList-manipulate", "dojo/domReady!"], function(query) {
query(".entryURL").forEach(function(node, index, arr){
query(node).parent().append("<span style='color:green'>URL</span>");
});
});
JSFiddle:http://jsfiddle.net/okk8unj5/