天天看点

Jquery 防止事件冒泡

Jquery 防止事件冒泡

1、简介

在jquery事件中,如果指定对象和指定对象的父对象(依次往上类推)都定义了同样的事件,则jquery默认会往上传递,挨个执行。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<div id="mydiv" style="width: 50px;height: 30px;background-color: green;">
			<div id="mydivInner" style="width: 30px;height: 20px;background-color: yellow;"></div>
		</div>
	</body>
	<script src="js/jquery-3.2.1.min.js"></script>
	<script type="text/javascript">
		$("#mydivInner").on("click",function(){
			alert("Inner div click");
		});
		$("#mydiv").on("click",function(){
			alert("Outer div click");
		})
	</script>
</html>

           

点击里面的按个div,会触发两次click事件。

2、阻止jquery事件冒泡

我在网上找了下,有很多种解决的办法,我在这里推荐一下方法

$("#mydivInner").on("click",function(){
	alert("Inner div click");
	return false;
});
           

在on方法中,返回false即可。

本文说的比较浅显,如果想深入了解,请参考其他相关博文