展开

关键词

事件冒泡和传播

举栗子 事件输出hello world 事件有两种,一种为事件传播,一种是事件冒泡 事件传播事件冒泡 这还要从遥远的荒诞说起,两家网景和ie,为了能争夺市场,互相使用相反的技术,当网景使用事件传播的时候 (两个正好相反)这个时候w3c来了,为了能规范规定,直接取折中,当事件发生时,先发生向下传播,当到底了以后再次使用事件冒泡,逐渐的冒泡到顶层window DOM为一个完整的树 使用事件传播输出hello 否则为事件传播 冒泡为上,事件传播为下,事件传播优于事件冒泡 [15.gif] 可以明确的知道,此时为false为冒泡,即全部向上传播,这个比较简单不在阐述 阻止进一步冒泡 // 获取元素 var div1 你点击的是内框"); event.stopPropagation(); // 阻止该事件进一步传播 }, false); div3.addEventListener('click', () => { ,为向下,且传播优先于冒泡 并且事件先进行向上传,直到遇到设置为冒泡的元素的时候,停止向上传,开始进行从上到下的捕获,先最外层捕获,然后逐层捕获,直到完成。

35860

Spring 事件传播机制分析

Spring4.0.4 Spring 事件机制采用的是观察者模型(又叫订阅发布模型) 有以下角色 ? 这里,观察者就是监听者,被观察者就是事件对象。 事件发布流程如下 ? 广播事件(被观察者)用 initApplicationEventMulticaster(); // Initialize other special beans in specific context ,广播事件。 = null) { this.parent.publishEvent(event);//调用父类发布方法向上传播 } } /** * Return the internal ApplicationEventMulticaster > listener : listeners) { //这里要注意下,有个验证监听者和事件类型匹配操作 //具体验证法就是 监听器的接收事件类型是不是与当前类型匹配,用的是

580111
  • 广告
    关闭

    开发者专享福利,1988元优惠券限量发放

    带你体验博客、网盘相册搭建部署、视频渲染、模型训练及语音、文字识别等热门场景。云服务器低至65元/年,GPU15元起

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    前端学习(51)~事件传播事件冒泡

    DOM事件事件传播的三个阶段是:事件捕获、事件冒泡和目标。 事件捕获阶段:事件从祖先元素往子元素查找(DOM树结构),直到捕获到事件目标 target。 在这个过程中,默认情况下,事件相应的监听函数是不会被触发的。 事件目标:当到达目标元素之后,执行目标元素该事件相应的处理函数。如果没有绑定监听函数,那就不执行。 事件冒泡阶段:事件事件目标 target 开始,从子元素往冒泡祖先元素冒泡,直到页面的最上一级标签。 事件冒泡 事件冒泡: 当一个元素上的事件被触发的时候(比如说鼠标点击了一个按钮),同样的事件将会在那个元素的所有祖先元素中被触发。 这一过程被称为事件冒泡;这个事件从原始元素开始一直冒泡到DOM树的最上层。 通俗来讲,冒泡指的是:子元素的事件被触发时,父元素的同样的事件也会被触发。取消冒泡就是取消这种机制。

    30120

    Event(事件)的传播与冒泡

    特性说明和原理图: 标准浏览器和Ie9+浏览器都支持事件的冒泡和捕获,而IE8-浏览器只支持冒泡 标准和Ie9+浏览器用stopPropagation()或cancelBubble阻止事件传播,而ie8 Ie8-用attachEvent为dom元素添加一个事件,但必须在事件名前加上on,此类事件只能在元素的冒泡阶段。 stopPropagatin()方法用于阻止事件传播,如果设置在捕获阶段,则目标和冒泡阶段不会被执行; cancelBubble属性只能阻止冒泡阶段,对捕获和目标阶段的事件不能阻止 preventDefault body.append( String.fromCharCode( event.keyCode )); }); }); 实现一个完整的event流的Demo 在cont的捕获事件处有阻止事件传播的代码 阻止默认事件只用于验证 应用场景 捕获阶段的事件应用场景较少,一般情况下都应用在目标和冒泡阶段。

    53590

    浅谈JCenter即将被停止服务的事件

    这么重大的事件也是相当出乎我意料,本来我以为是Google又要整什么幺蛾子,因为Google很喜欢废弃东西。结果了解下来,Google这次也是受害者。 接下来我来跟大家具体介绍一下JCenter的停止服务会带来哪些影响,以及这些影响生效的时间节点。 毫无疑问,JCenter的停止服务势必会影响两类人群:开源库的开发者和开源库的使用者。 我认为现在能做的事情还不太多,因为整个事件当中,还有一位非常核心的玩家没有表态,那就是Google。 刚才说了,Google也是这次事件的受害者,本来Android Studio创建项目时默认集成JCenter仓库,我还以为Google是和JFrog建立了战略合作关系。 我就在寻思着,Google会不会有计划自建一个第三方开源项目的仓库,从而不用再担心这种突然被停止服务的困扰。

    80021

    【Netty】inBound和outBound事件传播过程

    本节以 ChannelRead事件为例,学习 inBound和 outBound事件传播过程。总体如下图 ? inBound事件传播 handler之间的传播信息通过 fireXXX方法:其区别是从哪个节点开始传播。 最终inbound事件传播过程,是从头节点开始,逐个往下传递并触发用户回调函数,在这过程当中,可以手动调用pipeline的传播事件的方法,从任何一个节点开始从头开始触发传播事件,也可以直接通过ChannelHandlerContext 的传播事件方法,一次从本节点开始往下传播事件。 最后传到尾节点TailContext outBound事件传播 学习outbound事件传播,和inbound事件有相似之处。

    2.4K20

    日志分析之某网站weblogic服务停止事件分析

    某网站出现weblogic多次服务停止事件,时间分别为:(2018年1月2日:9点、14点、15点。1月3日:9点、14点,具体时间无)。 2. 网站方提供恶意代码附件”恶意代码.txt”,该恶意代码执行后导致weblogic停止。 3. 一、确定事件输入点 根据“点线面”模型里的流程,在确定事件输入点时我们需要清楚三点:1.异常是什么,2.产生异常涉及的系统是哪些(ip,业务,开放的服务,系统类型),3.这些受害主机产生异常的原因是什么 服务停止。 由于已知的最早一次服务停止事件发生在2018年1月2日,发现从2017/12/8 6:00:34起持续存在CVE-2017-5638漏洞告警,该漏洞属于Apache Struts 2远程命令执行漏洞,恶意用户可在上传文件时通过修改

    46620

    借助 Pod 删除事件传播实现 Pod 摘流

    理想情况下,我们希望 Pod 在启动关闭后立即停止接收流量。为了减轻这种情况,我们必须首先了解为什么会发生Pod开始关闭时仍然会接收到新流量这个问题。 但是,上篇文章里我们没有谈论到的是,如何从上层的 Service 控制器中注销 Pod,使得 Pod 能停止接收流量。 译注:我的理解是要在Pod真正停止运行前,要先把它从Service上拿掉,也就是摘流。 那么,是什么情况会导致 Pod 从 Service 中注销掉呢? 是否要无限期地等待事件传播?如果该节点重新恢复联机怎么办?如果你的Kubernetes 集群有成千上万个节点怎么办? 不幸的是,现实情况是并不存在防止所有中断的完美解决方案。 这将会发送一个Pod deletion 事件,该事件会同时通知给 kubelet 和 Endpoint Controller(端点控制器,这里指的是 Pod 上层的 Service控制器)。

    46320

    js 停止事件冒泡 阻止浏览器的默认行为

    在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”。 浏览器默认行为: 在form中按回车键就会提交表单;单击鼠标右键就会弹出context menu. a标签 1..停止事件冒泡 JavaScript代码 1 //如果提供了事件对象,则这是一个非IE浏览器 return false; } 但是在使用return false时必须注意: 1、jQuery有自己的事件处理层,也对处理程序做了封装,如果事件处理程序返回false,事件冒泡和浏览器默认事件都会被阻止 2、使用原生javaScript,在事件处理程序中返回false只会阻止浏览器默认行为,而事件冒泡依然存在。 3、浏览器默认行为和事件冒泡是相互独立的。阻止事件冒泡不会影响默认行为,反之亦然。 事件处理程序中无法取消的。

    1.3K120

    选择篇(023)-事件传播的三个阶段是什么?

    A: 目标 > 捕获 > 冒泡 B: 冒泡 > 目标 > 捕获 C: 目标 > 冒泡 > 捕获 D: 捕获 > 目标 > 冒泡 答案: D 在捕获阶段,事件通过父元素向下传递到目标元素。

    9420

    mysql停止命令 停止mysql服务命令

    如果没有将mysql注册为系统服务,那么我们可以使用MySQL为我们提供的一些工具来开启,关闭,重启mysql。当然,mysql服务脚本对mysql的操作也是调...

    10.6K40

    停止复用

    文章起源于我对于模块化、微服务、Serverless 以及单体应用几种不同的架构模式的思考。而这其中的一个原因就是:人们经常从一个极端走另外一个极端。既然单体不...

    22340

    setInterval停止

    9141

    uwsgi停止

    uwsgi停止 和 nginx配置 uwsgi停止 nginx配置 uwsgi停止 必须在uwsgi.ini中配置好 pidfile = 绝对路径 ///uwsgi.pid 这样才有pid文件 uwsgi –stop uwsgi.pid 这样就可以停止了 有一点需要注意:如果没有uwsgi.pid 又需要停止uwsgi服务 可以netstat -lntp查看一下端口占用 然后lsof -i :端口 查看具体的pid 把pid写入 再进行停止操作 nginx配置 uwsgi.ini中 可以选择http或者socket 如果选择了socket nginx就是配置为uwsgi_pass ,推荐这种

    1740

    js 停止事件冒泡 阻止浏览器的默认行为(阻止a标签跳转 )

    在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”。 停止事件冒泡 JavaScript代码 //如果提供了事件对象,则这是一个非IE浏览器 if ( e && e.stopPropagation ) //因此它支持W3C的stopPropagation( )方法 e.stopPropagation();  else //否则,我们需要使用IE的方式来取消事件冒泡  window.event.cancelBubble = true; return false 编辑文章时阻止a标签跳转 $("#final_content").find("a").click(function(e){ //如果提供了事件对象

    1.1K40

    AI大事件 | Geoffrey Hinton决定抛弃反向传播,预期策略梯度算法

    大数据文摘作品 编译 | 宁云州 呜啦啦啦啦啦大家好呀,又到了本周的AI大事件时间了。过去的一周中AI圈都发生了什么?大佬们互撕了哪些问题?研究者们发布了哪些值得一读的论文? 文摘菌带你盘点过去一周AI大事件! 了解过去一周AI爆点,一篇就够啦! 新闻 Geoffrey Hinton决定抛弃反向传播 来源:WWW.AXIOS.COM 链接:https://www.axios.com/ai-pioneer-advocates-starting-over utm_campaign=Revue%20newsletter&utm_medium=Newsletter&utm_source=The%20Wild%20Week%20in%20AI 现在几乎所有神经网络都会经过反向传播的训练

    40230

    基因日签【20211220】异染色质从成核事件后开始传播

    2021 12/20基因日签 异染色质从成核事件后开始传播 .壹. 关键概念 异染色质在特殊序列处成核,随后这种非活性结构沿染色质纤维传播。 .贰. 关键概念 相似的传播效应发生在端粒和酵母交配型的沉默盒中。 文字及图片信息均来源于Genes X(中文版),如有侵权请联系删除。 THE END

    9010

    优雅停止Pod

    作者: 吴叶磊 一直以来我对优雅地停止 Pod 这件事理解得很单纯:不就利用是 PreStop hook 做优雅退出吗? 但最近发现很多场景下 PreStop Hook 并不能很好地完成需求,这篇文章就简单分析一下“优雅地停止 Pod”这回事儿。 1 何谓优雅停止? 到了分布式系统中,优雅停止就不仅仅是单机上进程自己的事了,往往还要与系统中的其它组件打交道。 假如类似的事情发生了,为了业务稳定和数据安全,我们就不能强制关闭 Pod,而应该停止操作过程,通知工程师介入。 这时,上面所说的 Pod 退出流程就不再适用了。 但这种办法存在一个问题就是实现起来比较复杂,我们需要自己实现一个控制器,在其中实现细粒度的控制逻辑并且在 Controller 的控制循环中不断去检查能否安全停止 Pod。

    85371

    扫码关注腾讯云开发者

    领取腾讯云代金券