简单介绍一下dom的onclick是件和dojo的weight的onClick事件的不同
1、首先从字幕上区分一个是onclick,另一个是onClick
2、获得元素的方式不同,前者通过dojo.byId('id');后者通过digit.byId('id');
3、
<html>
<head>
<script type="text/javascript" src="http://localhost/dojo/dojo.js" djconfig="isDebug:true,parseOnLoad: true"></script>
<script type="text/javascript">
dojo.require("dataPd");
dojo.addOnLoad(function(){
dojo.connect(dojo.byId("div1"),"onclick",function(){
console.log("onclick1----");
})
dojo.connect(dijit.byId("div1"),"onClick",function(){
console.log("onclick2----");
})
});
</script>
</head>
<body>
button: <div id="div1" dojoType="dataPd">1111111111111111111111111111
<script type="dojo/method" event="onClick">
console.log("1----------------");
//此方法相当于覆盖了weight的postCreate里的方法;
</script>
<script type="dojo/connent" event="onClick">
//此dojo/connect相当于上面的dojo.connent()方法,而上面的dojo/method,则相当于weight建立是的postCreate()的方法,在weight创建的时间就执行的方法
console.log("1----------------");
</script>
</div>
</body>
</html>
即下面的:
dojo.provide("dataPd");
dojo.require("dijit.form.Button");
dojo.require("accept");
dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.declare('dataPd', [dijit._Widget, dijit._Templated], {
widgetsInTemplate: true,
templateString:'<div>Click</div>',
oddEvent:function(){
for(var i=0;i<10;i++){
if(i%2==0)
{
dojo.publish("oddEvents",[i]); //如果判断i为偶数,这发布一个事件,传递的参数为此时i的值ֵ
}
}
} ,
_onClick:function(){
var myObject=new accept();
dojo.subscribe("oddEvents", myObject,'eventAccept');//点击onClik时订阅这个事件(只需订阅一次即可)即每当oddEvents事件被发布时,即调用myObject对象中的eventAccept函数,通常情况下eventAccept函数应该有一个参数用来接收
this.oddEvent();
},
postCreate:function(){
this.onClick = function(){
console.log("1-");
};
alert("--------");
},
constructor:function(){
console.log('-----------');
}
});
分享到:
相关推荐
Dojo 是一个强大的JavaScript工具库,它为Web开发提供了丰富的功能和组件,包括DOM操作、事件处理、动画效果、模块管理以及数据存储等。本文将通过一系列实例,帮助初学者快速掌握Dojo的核心概念和使用方法。 首先...
在上述代码中,`dojo.connect` 的前两个参数分别为要监听的 DOM 元素和事件类型(如 `"onclick"`),第三个参数为事件处理函数。 ##### 特别注意:指定作用域 在绑定事件处理函数时,有时需要指定特定的作用域。...
Dojo事件处理框架是JavaScript库Dojo Toolkit中的一个重要组成部分,它提供了一种统一的方式来管理和处理DOM事件以及JavaScript对象之间的交互。这个系统深受面向切面编程(AOP)思想的影响,尤其是其advice机制,...
require(["dojo/dom", "dojo/on"], function(dom, on){ var button = dom.byId("myButton"); on(button, "click", function(event){ alert("Button clicked!"); }); }); ``` 在这个例子中,我们导入了`dojo/dom`...
5. **处理事件**:Dojo提供了一种声明式的方式来绑定DOM事件,通过`data-dojo-attach-point`和`data-dojo-attach-event`属性。例如: ```html <button data-dojo-attach-point='buttonNode' data-dojo-attach-...
它还引入了dojo/_base,这是DOJO的基础模块,包含了基本的数据类型、事件处理和DOM操作等功能。 **2. 关键特性** - **模块系统**:DOJO的模块系统允许开发者按需加载依赖,减少页面初始化时的网络负担,提高加载...
例如,我们可以监听一级菜单项的`onClick`事件,然后调用`open`方法显示二级菜单。 5. **初始化和渲染**:最后,我们需要调用`startup`方法启动菜单,确保所有依赖项已加载并准备好使用。然后,可以调用`placeAt`将...
4. **绑定事件**:监听Tree的事件,如`onOpen`、`onClick`等,实现与用户的交互。 5. **渲染Tree**:将Tree插入DOM中并渲染。 ### 示例代码 ```javascript require(["dojo/store/Memory", "dijit/tree/...
dojo.event.connect(btn,"onclick",sayHello); }); ``` 在更复杂的情况下,`dojo.connect`可以接收一个对象和方法作为额外参数,改变事件处理函数的作用域。 4. **dojo.xhrGet**:Dojo提供了方便的Ajax功能,...
在Dojo中,可以通过`dojo.connect`函数将事件处理函数与DOM元素或对象的方法关联起来。例如: ```javascript function sayHello(event) { alert("Hello"); } dojo.addOnLoad(function(){ var btn = dojo.byId('...
- **示例**:`dojo.connect(dojo.byId('helloBtn'), 'onclick', function(){ alert("Hello world!"); });` #### 三、Dojo的使用步骤 1. **引入CSS样式表**: - **代码**: ```html @import "js/dijit/themes...
dojo.connect(buttonObj, "onclick", function(){ sendRequest(); }); }); function sendRequest() { var name = document.getElementById("nameInput").value; var bindArgs = { url: "/welcome", method...
在本文中,我们将深入探讨如何使用Dojo框架来获取下拉框(`<select>`元素)的文本和值。Dojo是一个强大的JavaScript库,旨在简化DHTML应用的开发...使用Dojo,开发者可以更专注于应用逻辑,而不是浏览器差异和DOM操作。
dojo.event.connect(helloButton, 'onClick', 'helloPressed'); // 绑定,这只是其中一种绑定方法 } dojo.addOnLoad(init); // 当然也可以将 init 函数命名为其他的名称 ``` - **`dojo.require` 方法**:用于...
- `dojo.byId`:获取 Dojo 控件的 DOM 节点。 - `dijit.byId`:获取 Dojo 控件对象。 - `XSP.getElementById`:客户端访问 Xpage 控件。 - `getComponent`:服务器端访问控件。 ### 4. Xpage VS 表单 Xpage 相比...
### Dojo Widget 概览 Dojo 是一个用于构建高性能、富交互性的 Web 应用程序的开源 JavaScript 库。Dojo 提供了一系列强大的小工具(Widget),它们可以帮助开发者快速地构建用户界面,并且提供了丰富的功能和良好...
比如,我们可以使用dojo的`dojo/on`和`dojo/dom-construct`模块来创建交互式内容: ```javascript var content = domConstruct.create("div", null, dom.byId("container")); on(content, "click", function() { ...
2. **DOM事件**:如`onload`、`onclick`等事件监听器,当特定的事件发生时,关联的回调函数会被调用。例如,`img.onload`和`img.onerror`用于处理图片加载成功或失败的情况。 3. **HTML5的`postMessage`**:用于跨...