什么是dojo相当于$('body')?

时间:2013-11-21 12:38:25

标签: dojo

以下方法返回对象

dojo.body()

但是我们不能在它上面添加类(或任何其他操作)?

2 个答案:

答案 0 :(得分:3)

有关使用dojo/query特别是AMD的信息,请参阅http://dojotoolkit.org/reference-guide/1.9/dojo/query.htmldojo/query返回NodeList - 一个类似于$('.someSelector')的数组。请注意,要执行$('body').addClass('class')之类的操作,您需要dojo/NodeList-dom

使用dojo/query(和AMD)添加类的基本示例是

require(["dojo/query", "dojo/NodeList-dom"], function(query){
  query("body").addClass('class');
});

有关NodeList方法的完整列表,请参阅Dojo docs。方法可以在不同的模块中定义,因此在方法名称下面查找“由dojo / NodeList-dom定义”。

答案 1 :(得分:1)

在当前版本的Dojo(见1.9)中,技术发生了变化。要访问正文,现在可以编码:

require(["dojo/_base/window"], function(win) {
    var myBody = win.body();
});

要添加一个类,可以编写代码:

require(["dojo/_base/window", "dojo/dom-class", function(win, domClass) {
    domClass.add(win.body(), "someClass");
});

另见: