欢迎光临
我们一直在努力

层中层事件问题

建站超值云服务器,限时71元/月

今天遇到的问题是这样的:
 两个层,一个外层,一个内层,两个层都有onclick事件,点击外层,打开google页面,点击内层,打开baidu页面,我是这样做的
<div onclick="window.open('http://www.google.cn')" style="width:250px;background-color:yellow">  
 <p>google.cn</p>  
 <div onclick="window.open('http://www.baidu.com')" style="width:200px;background-color:orange">  
 <p>baidu.com</p>  
 </div>  
 <p>google.cn</p>  
</div>  
当点击外层的时候,打开google,这里正确的;当点击内层时,出现了即打开baidu,又打开了google,这个效果不是我要的。经过向高人请教,他告诉我一种叫“阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)”可以解决这个问题,我在网上找了相关资料,终于解决了。代码如下:
<script type="text/javascript">  
function doSomething (obj,evt) {  
 window.open(obj); 
 var e=(evt)?evt:window.event;  
 if (window.event) {  
 e.cancelBubble=true;  
 } else {  
 e.stopPropagation();  
 }  
}  
</script>  
<div onclick="window.open('http://www.google.cn');" style="width:250px;background-color:cyan;">  
 <p>google.cn</p>  
 <div onclick="doSomething('http://www.baidu.com',event);" style="width:200px;background-color:lightblue;">  
 <p>baidu.com</p>  
 </div>  
 <p>google.cn</p>  
</div>  

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 层中层事件问题
分享到: 更多 (0)

评论 抢沙发

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