• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

jQuery的stopImmediatePropagation()方法有什么用?

jquery 搞代码 4年前 (2021-12-27) 21次浏览 已收录 0个评论

stopImmediatePropagation()方法是jQuery中一个内置方法,属于Event对象;用于阻止为所选元素执行其他事件处理程序,并防止当前事件在DOM树上冒泡。

语法:

event.stopImmediatePropagation()

参数:该event参数来自事件绑定函数,不可省略。

返回值:此方法返回所选元素和应用的更改。

示例:

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<style>
			div {
				height: 100px;
				width: 300px;
				padding: 10px;
				border: 1px solid blue;
				background-color: lightblue;
			}
		</style>
	</head>

	<body>
		<div>点击这个 div 元素。</div>
		<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
		<script>
			$(document).ready(function() {
				$("div").click(function(event) {
					alert("执行的第1个事件");
					event.stopImmediatePropagation();
				});
				$("div").click(function(event) {
					alert("执行的第2个事件");
				});
				$("div").click(function(event) {
					alert("执行的第3个事件");
				});
			});
		</script>
	</body>

</html>

在上面的示例中,有三个弹出。但只弹出第一个窗口,其他两个弹出被stopImmediatePropagation()方法阻止执行了。

点击div元素后:

示例2:

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<style>
			body { 
            width: 70%; 
            height: 40%; 
            font-size: 30px; 
            padding: 20px; 
            border: 2px solid green; 
        } 
          
        p { 
            background-color: lightgrey; 
        } 
          
        div { 
            padding: 4px; 
            background-color: lightgrey; 
        } 
		</style>
	</head>

	<body>
		<p>测试文本!点击p元素</p>
		<div >测试文本!点击div元素</div>
		<script src="https://cdnj<div style="color:transparent">来源gaodai.ma#com搞##代!^码网</div>s.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
		<script>
		$("p").click(function(event) { 
	            event.stopImmediatePropagation(); 
	        }); 
	        $("p").click(function(event) { 
	            // This function will not executed 
	            $(this).css("background-color", "yellow"); 
	        }); 
	        $("div").click(function(event) { 
	            // This function will executed 
	            $(this).css("background-color", "red"); 
	        }); 
		</script>
	</body>

</html>

上例中,点击p元素后发生两个事件,第一个事件为调用stopImmediatePropagation()方法,第二个事件是改变p元素的背景颜色;但当stopImmediatePropagation()方法被调用后,会阻止第二个事件发生,所以点击p元素后,背景颜色不发生改变。

以上就是jQuery的stopImmediatePropagation()方法有什么用?的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:jQuery的stopImmediatePropagation()方法有什么用?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址