dojo.connect中node的含义(node、onclick、callback)

Meaning of node in dojo.connect (node, onclick, callback)

我正在尝试将一个标志变量传递到节点中,它验证标志是否为真然后执行 dojo.connect(标志、onclick、回调)。其他它跳过一个回调函数。

节点基本上是组成HTML的每个元素的DOM对象表示。

查看官方 Dojo Toolkit 的文档以了解其功能: https://dojotoolkit.org/reference-guide/1.10/dojo/connect.html

你没有指定,但我想你在 1.6 中使用 Dojo,这是一个老习惯,因为我们在它的结构功能中实现了 AMD 架构,你必须有这样的东西:

// Saving your handle
var handle = dojo.connect(node, "onclick", callback);
// Removing the handle
dojo.disconnect(handle);

当您使用 dojo.connect(flag, onclick, callback) 时,我们假设您有一个元素,一个 DOM 节点(在本例中为 'flag')。

在 Dojo 1.6 版本或更早版本中,您可以通过节点 ID 获取节点,例如:(一些官方文档:https://dojotoolkit.org/api/#dojo.byId

// Here's your node (by ID)   
var my_node = dojo.byId("foo");

希望对您的理解有所帮助。

你需要这样的东西吗?

// Your custom callback
function your_callback_function() {
  // You business rules, in this case:
  if (dojo.query('#your_flag:checked')) {
    // Do something..
  }
}

// binding event to the DOM-node and callback 
var handle = dojo.connect(dojo.byID("your_flag"), "onclick", your_callback_function);

您可以在以下位置查看有关 < 1.6 版本 Dojo Events 功能的更多信息:https://dojotoolkit.org/reference-guide/1.6/dojo/index.html#events

我建议你多了解一下AMD和Dojo的新特性,因为它的变化。