我习惯使用jquery .index()并需要一些帮助来了解如何使用Dojo Nodelist。我的代码:
<ul id="indexof1">
<li><a id="1">domain_1.net</a></li>
<li><a id="2">domain_2.com</a></li>
<li><a id="3">domain_3.org</a></li>
<li><a id="4">domain_4.net</a></li>
</ul>
require(["dojo/query", "dojo/on", "dojo/NodeList-traverse"], function(query, on){
query("ul a").on("click", function(){
console.log(query(this).parent().parent()[0]); // Returns UL
console.log(query(this)[0]); // Returns the node has been clicked A
alert(query('a', query(this).parent().parent()[0]).indexOf(query(this)[0]));
});
});
答案 0 :(得分:0)
这可以帮助您满足您的要求:
require(["dojo/query", "dojo/on", "dojo/NodeList-traverse"], function(query, on){
query("ul a").on("click", function(e){
console.log(query("#indexof1 li a").indexOf(this)); //returns index
});
});