手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >javascript下给元素添加事件的方法与代码
javascript下给元素添加事件的方法与代码
摘要:最简单的是这样:动态添加onclick事件:varbObj=document.getElementById("bu");bObj.oncli...

最简单的是这样:

<inputtype="button"onclick="alert(this.value)"value="我是button"/>

动态添加onclick事件:

<inputtype="button"value="我是button"id="bu">

<scripttype="text/javascript">

varbObj=document.getElementById("bu");

bObj.onclick=objclick;

functionobjclick(){alert(this.value)};

</script>

如果使用匿名函数function(){},则如下面所示:

<inputtype="button"value="我是button"id="bu">

<scripttype="text/javascript">

varbObj=document.getElementById("bu");

bObj.onclick=function(){alert(this.value)};

</script>

上面的方法其实原理都一样,都是定义onclick属性的值。值得注意的是,如果多次定义obj.onclick,例如:obj.onclick=method1;obj.onclick=method2;obj.onclick=method3,那么只有最后一次的定义obj.onclick=method3才生效,前两次的定义都给最后一次的覆盖掉了。

再看IE中的attachEvent:

<inputtype="button"value="我是拉登"id="bu">

<scripttype="text/javascript">

varbObj=document.getElementById("bu");

bObj.attachEvent("onclick",method1);

bObj.attachEvent("onclick",method2);

bObj.attachEvent("onclick",method3);

functionmethod1(){alert("第一个alert")}

functionmethod2(){alert("第二个alert")}

functionmethod3(){alert("第三个alert")}

</script>

执行顺序是method3>method2>method1,先进后出,与堆栈中的变量相似。需要注意的是attachEvent中第一个参数是on开头的,可以是onclick/onmouseover/onfocus等等

据说(未经确认验证)在IE中使用attachEvent后最好再使用detachEvent来释放内存

再看看Firefox中的的addEventListener:

<inputtype="button"value="我是布什"id="bu">

<scripttype="text/javascript">

varbObj=document.getElementById("bu");

bObj.addEventListener("click",method1,false);

bObj.addEventListener("click",method2,false);

bObj.addEventListener("click",method3,false);

functionmethod1(){alert("第一个alert")}

functionmethod2(){alert("第二个alert")}

functionmethod3(){alert("第三个alert")}

</script>

可以看到,在ff中的执行顺序是method1>method2>method3,刚好与IE相反,先进先出。需要注意的是addEventListener有三个参数,第一个是不带“on”的事件名称,如click/mouseover/focus等。

【javascript下给元素添加事件的方法与代码】相关文章:

JavaScript中this关键字使用方法详解

删除javascript所创建子节点的方法

JavaScript实现单击下拉框选择直接跳转页面的方法

简述JavaScript中正则表达式的使用方法

JavaScript中使用Math.PI圆周率属性的方法

javascript用函数实现对象的方法

简介JavaScript中用于处理正切的Math.tan()方法

javascript事件冒泡和事件捕获详解

JavaScript获得指定对象大小的方法

javascript中动态函数用法

精品推荐
分类导航