本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

JS实现事件监听的几种方法

一、行内绑定

行内绑定:在HTML的标签中通过事件属性进行绑定,绑定方式:on+事件名,在将所触发的事件赋值给该属性,如下:

<button onclick="alert('123');">点击</button>
登录后复制

二、使用element.onclick进行事件绑定

使用element.onclick进行事件绑定:通过操作DOM元素,为DOM绑定事件(使用形式同行内绑定)。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
			window.onload = function(){
				var btn = document.getElementById('btn');
				btn.onclick = function(){
					alert("hello world");
				}
			}
		</script>
	</head>
	<body>
		<button id="btn">点击</button>
	</body>
</html>
登录后复制

三、使用addEventListener() 方法

使用 addEventListener() 方法,接受3个参数(要处理的事件名、作为事件处理程序的函数、一个布尔值,这个布尔值为 true 表示在事件捕获阶段调用事件处理程序,为 false 则在事件冒泡阶段调用)。有些浏览器不支持事件捕获(如 IE8 及更低版本),所以谨慎绑定捕获阶段的事件监听器。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
			window.onload = function(){
				var btn = document.getElementById('btn');
				btn.addEventListener('click',function(){
					alert("123");
				},false);
			}
		</script>
	</head>
	<body>
		<button id="btn">点击</button>
	</body>
</html>
登录后复制

解绑事件的方法:通过元素调用 removeEventListener() 来移除,传入的参数与添加事件处理程序时相同,第二个参数(事件处理程序函数)必须是同一个(指向地址相同),所以事件处理程序函数应该保存在一个变量中,传入的是匿名函数则无法移除该事件监听器。

注意:在IE8及以下版本中,使用attachEvent() 进行事件绑定,接受2个参数(事件处理程序名称、事件处理程序函数),通过该方法绑定的事件处理程序会在冒泡阶段被执行。该方法可以绑定多个事件处理程序,但执行顺序与绑定顺序相反。

【推荐学习:javascript高级教程】

以上就是javascript怎么设置事件监听的详细内容,更多请关注悠悠之家其它相关文章!

点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部