2013-11-21 132 views
0

下面的方法返回对象

dojo.body() 

,但我们不能在它(或任何其他操作)addClass?

+0

dojo是jquery对象或di不同的框架对象? –

+1

@Murali:Dojo是一个与jQuery无关的工具包。 http://dojotoolkit.org –

+0

请发现修改后的问题 – Pradeep

回答

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

在当前的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"); 
}); 

参见: