文档章节

stopPropagation | preventDefault | return false

leona_lily
 leona_lily
发布于 2015/04/10 16:34
字数 183
阅读 9
收藏 0
stopPropagation()

// 在弹出对话框上点击时, 不进行任何页面操作, 并阻止冒泡

   document.getElementById('dialog').onclick= function(ev) { ev.stopPropagation();};

   ie下是 ev.cancelBubble = false;

  自理解:阻止其他事件

  preventDefault()

<a id="link" href="http://w3c.org">W3C 首页链接</a> 

<script>

// 在新窗口, 打开页面

document.getElementById('link').onclick = function(ev) {

// 阻止浏览器默认动作 (页面跳转)

ev.preventDefault();

// 在新窗口打开页面

window.open(this.href); };

</script>

  自理解:阻止比如a标签里面默认的href跳转这样的行为,就是阻止默认的行为操作

return false

  自理解:阻止事件接下来的操作,针对某一事件而言


--------------end------

function cancelBubble(evt) {
    // 阻止事件冒泡
    if (window.event) {
        // Chrome,IE6,Opera
        window.event.cancelBubble = true;
    } else {
        // FireFox 3
        evt.stopPropagation();
    }
}




© 著作权归作者所有

共有 人打赏支持
leona_lily
粉丝 9
博文 99
码字总数 43341
作品 0
朝阳
程序员
私信 提问
JS_stopPropagation, preventDefault 和 return false

因为有父, 子节点同在, 因为有监听事件和浏览器默认动作之分. 使用 JavaScript 时为了达到预期效果经常需要阻止事件和动作执行. 一般我们会用到三种方法, 分别是 stopPropagation(), prevent...

喵王不瞌睡
2014/12/07
0
0
jQuery中return false,e.preventDefault(),e.stopPropa

e.stopPropagation()阻止事件冒泡 <head> <title></title> <script src="Scripts/jQuery-1.4.1.js" type="text/JavaScript"></script> </head> <body> <table> <tr> <td><span>冒泡事件测试<......

张悟空
2016/04/22
51
0
js阻止冒泡和阻止浏览器的默认行为

防止冒泡 举一个例子,就是在子元素当中触发click事件,它的父元素有click事件的话,也会被触发,我们就需要用event.stopPropagation来防止冒泡。Ie使用的是cancelBubble,w3c使用的是stopP...

南蓝NL
2017/12/22
0
0
javascript事件兼容处理以及时间冒牌、捕获

/cancelBubble阻止事件冒泡 function cancelBubble(ev){ var ev=ev||window.event; if(ev.stopPropagation){ ev.stopPropagation(); }else{ ev.cancelBubble=true; } } //获取样式 function......

梦想代码
2017/12/18
0
0
深度解析JavaScript事件对象

这篇文章主要介绍了JavaScript事件对象,结合实例形式深入分析了javascript DOM、IE及其他浏览器相关事件对象操作技巧与注意事项,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可...

前端攻城小牛
前天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SpringCloud 与 SpringBoot 的版本兼容

Spring Cloud Finchley 构建并使用 Spring Boot 2.0.x,预计不会与Spring Boot 1.5.x一起使用Spring Cloud Edgware Spring Boot 1.5.xDalston 和 Edgware 发布版基于Spring Boot 1......

晨猫
3分钟前
0
0
microtime 记录的时间点,以毫秒来显示,并显示每一阶段占用百分比。统计代码执行时间。

function mini_bench_to($arg_t, $arg_ra=false){ $tttime=round((end($arg_t)-$arg_t['start'])*1000,4); if ($arg_ra) $ar_aff['total_time']=$tttime; else $aff="total......

lwkai
4分钟前
0
0
Docker 解决容器时间与主机时间不一致的问题三种解决方案

这篇文章主要介绍了Docker 解决容器时间与主机时间不一致的问题的相关资料,这里提供了三种方法,供大家参考,需要的朋友可以参考下 Docker容器时间与主机时间不一致 通过date命令查看时间 查...

Jack088
6分钟前
0
0
neo4j 开启远程web访问7474端口 以 用浏览器打开远程neo4j的web控制台界面

一、对于3.0以前的版本 在安装目录的 $NEO4J_HOME/conf/neo4j.conf 文件内,找到下面一行,将注释#号去掉就可以了 #dbms.connector.https.address=localhost:7474 改为 dbms.connector.https...

Airship
6分钟前
0
0
集合排序

根据指定规则,对集合元素进行自定义排序 List<Map<String, Object>> list= data.stream().sorted(new Comparator<Map>() { @Override public int compare(Map o1, Map o2) { Comparator c =......

zhaochaochao
8分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部