本章节介绍一下stopPropagation()函数的作用。

此函数能够停止事件向上传播,更准确的说就是阻止事件冒泡效果。

先看一段代码实例:
   [ bootstrap ] 运行代码    下载代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="https://www.51qianduan.com/" />
<title>51前端</title>
<style type="text/css">
#antzone{
  width:150px;
  height:50px;
  margin:0px auto;
  background:#CCC;
  text-align:center;
  font-size:12px;
}
</style>
<script type="text/javascript">
window.onload=function(){
  var obt=document.getElementById("bt");
  var oantzone=document.getElementById("antzone");
  obt.onclick=function(){
    alert("按钮对象上的事件触发");
  }
  oantzone.onclick=function(){
    alert("div上的事件触发");
  }
}
</script>
</head>
<body>
<div id="antzone">
  <input type="button" id="bt" value="查看效果"/>
</div>
</body>
</html>
在上面的代码中,点击按钮不但会触发按钮上的click事件,并且div上的事件也会触发,这就是事件冒泡。

下面就用stopPropagation()来阻止事件的冒泡现象。

代码如下:
   [ bootstrap ] 运行代码    下载代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="https://www.51qianduan.com/" />
<title>51前端</title>
<style type="text/css">
#antzone{
  width:150px;
  height:50px;
  margin:0px auto;
  background:#CCC;
  text-align:center;
  font-size:12px;
}
</style>
<script type="text/javascript">
window.onload=function(){
  var obt=document.getElementById("bt");
  var oantzone=document.getElementById("antzone");
  obt.onclick=function(ev){
    alert("按钮对象上的事件触发");
    ev.stopPropagation();
  }
  oantzone.onclick=function(){
    alert("div上的事件触发");
  }
}
</script>
</head>
<body>
<div id="antzone">
  <input type="button" id="bt" value="查看效果"/>
</div>
</body>
</html>

代码描述:stopPropagation()停止事件传播。stopPropagation()停止事件传播代码下载



154 205



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到