我想得到一个完全像dom.byId()返回的结果,一个domNode。但是我不能在domNode上使用id。因此,我唯一的选择是按类名而不是ID搜索。
我试过了
query(".classname").first()
因为我知道只有一个实现该类名的domNode
但是我不能在dojo中任何期望domNode的后续函数中使用结果(即NodeList),例如dojo / dom-geometry :: position()
最佳答案
好吧,如果要使用类名访问节点。
以下是工作代码-
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/
随时提出您的进一步查询。
希望这对您有帮助:)
关于javascript - 如何通过使用类名而不是id进行搜索来获取domNode?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39730480/