网站制作学习网JS脚本→正文:javascript事件处理函数/监听函数
字体:

javascript事件处理函数/监听函数

JS脚本 2010/4/8 16:05:57  点击:不统计

http://%77w%77%2E%66%6F%72%61%73%70%2E%63n网站制作学习
首先介绍一下事件处理监听函数概念
事件是用户或者浏览器自身特定的行文,比如click,movseover等.用于响应某个事件而调用的函数称为事件处理函数,在Dom中称之为事件监听函数.
举例:
<div id = "testdiv">网站制作学习网,www.forasp.cn</div>
var foraspobj = document.getElementById('testdiv');
foraspobj.onclick = fucntion(){alert("点击了testdiv层!测试事件处理函数");}
上面的这个例子就是一个事件处理监听函数,这个分配方法事件处理函数名称必须小写,才能正确响应事件.

上面的处理也可以直接写到对象里面
<div id = "testdiv" onclick="alert('点击了testdiv层,测试事件处理函数!');">网站制作学习网,www.forasp.cn</div>
在对象里面写事件3w处.理for函asp数.cn可以大小写不限,但是在标准的XHTML中必须全部小写.特别注意.

IE中的事件处理函数,在IE中有window有两个方法attachEvent()和detachEvent();前面的是给对象添加事件处理函数,后面的是将函数分离处理.

原文章%77w%77%2Ef%6F%72%61%73%70%2E%63n

语法:obj是对象
obj.attachEvent("动作名称",调用函数);
obj.detachEvent("动作名称",调用函数);
举例说明
<div id="forasp">网站制作学习网</div>
var obj = document.getElementById("forasp");
function forasp_cn()
{
alert("this site is www.forasp.cn");
obj.detachEvent("onclick",forasp_cn);
}
obj.attachEvent("onclick",forasp_cn);
在IE下,当点击层forasp时,会弹出窗口this site is www.forasp.cn 如图:
原文章%77w%77%2Ef%6F%72%61%73%70%2E%63n


当第二次点击时,不会有任何反映,在点击第一次后,detachEvent将事件处理函数分离.没有了反映

DOM中事件监听的方法,addEventListener()和removeEventListener()前面的用来给对象田间事件处理函数,后面的则是分离事件处理函数.
语法:obj是对象
obj.addEventListener("事件名",调用函数,flag);
obj.removeEventListener("事件名",调用函数,flag);
事件名跟上面IE的动作名称有点差别,动作名称比如:onclick,onmouseover等,但是事件名是:click,mouseover等,可以理解为动作名加了on(实际动作),而事件名是事件行为名称.
flag标识时间函数的处理阶段,适用于捕获阶段还是用于冒泡阶段.为对象添加监听函数,当删除时,必须使用同样的处理阶段.
举例:
<div id="forasp">网站制作学习网</div>
var obj = document.getElementById("forasp");
function forasp_cn()
{
alert("this site is www.forasp.cn");
obj.removeEventListener("onclick",forasp_cn);
}
obj.addEventListener("click",forasp_cn,false);
obj.removeEventListener("click",forasp_cn,false);
这个的效果跟IE的效果一样.

以上就是javascript事件处理函数/监听函数,欢迎转载,请注明来源:http://www.forasp.cn

http://%77%77%77%2E%66网站制作%6F学习网%72%61%73%70%2E%63%6E

·上一篇:仿百度知道终极登录效果 >>    ·下一篇:javascript事件对象 >>
推荐文章
最新文章