js事件处理程序一般有三种:
1、HTML事件处理程序
<body> <input type="button" value="点击" onclick="mes()" /> <!--js--> <script> function mes(){ document.write("hello world!"); } </script> </body>
这种事件方式一般不推荐,变更事件麻烦。
2、DOM0级处理程序
<body> <input type="button" value="点击" id="btn"/> <!--js--> <script> var btn = document.getElementById("btn"); btn.onclick = function(){ document.write("hello world!"); } </script> </body>
这里可以 = 一个匿名函数,也可以是已声明函数。
DOM0级处理程序的清空:element.onclick = null;
3、DOM2级处理程序
DOM2级处理程序定义了事件添加和事件删除两个方法。分别是:addEventListener()和removeEventListner()。
这两个方法都有三个参数:处理事件名(如:点击事件 click),事件处理的函数(可以是匿名函数也可以是已声明函数,这里一般用已声明函数,方便remove),布尔值(这里的值是调用事件的方式,true为事件捕获,false为事件冒泡,一般设置为事件冒泡)
添加事件:
<body> <input type="button" value="点击" id="btn"/> <!--js--> <script> var btn = document.getElementById("btn"); btn.addEventListener('click',function(){ document.write("hello world!"); },false); </script> </body>
删除事件:
<body> <input type="button" value="点击" id="btn"/> <!--js--> <script> var btn = document.getElementById("btn"); btn.addEventListener('click',mes,false); </script> </body>