我想得到一个完全像dom.byId()返回的结果,一个domNode。但是我不能在我的domNode上使用id。所以我唯一的另一个选择是按类名而不是id来搜索它。
我试过
query(".classname").first()
因为我知道只有一个domNode实现了这个类名
但是我不能在dojo的任何后续函数中使用结果(这是一个NodeList),它期望domNode,例如dojo / dom-geometry :: position()
答案 0 :(得分:1)
好吧,如果你想使用类名访问节点。
下面是工作代码 -
require(["dojo/query", "dojo/NodeList-traverse", "dojo/NodeList-dom", "dojo/domReady!"], function(query) {
query(".className").first().style({
"backgroundColor": "#FF0"
});
});
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"
data-dojo-config="async: true"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.10.4/dijit/themes/claro/claro.css">
<ul>
<li class="className">First</li>
<li class="className">Second</li>
<li class="className">Third</li>
</ul>
JS小提琴: https://jsfiddle.net/vikash2402/jfwsLnd4/
随意拍摄您的进一步查询。
希望这会对您有所帮助:)