stopImmediatePropagation():void
停止当前节点和后续节点的事件侦听,有优先级,则按优先级顺序,无优先级则按注册侦听器的顺序。即执行到发出stopImmediatePropagation命令的侦听器后面的侦听器不可用。
stopPropagation():void
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。如下面的funA和funB,后续则不可用。
如:
this.addEventListener(MouseEvent.MOUSE_DOWN, funA,false,2);
this.addEventListener(MouseEvent.MOUSE_DOWN, funB,false,1);
function funA (evt:MouseEvent):void
{
trace ("A!");
evt.stopImmediatePropagation ();
}
function funB (evt:MouseEvent):void
{
trace ("B!");
}
输出A。
改为:
function funA (evt:MouseEvent):void
{
trace ("A!");
evt.stopPropagation();
}
function funB (evt:MouseEvent):void
{
trace ("B!");
}
输出A,B。
分享到:
相关推荐
stopImmediatePropagation , stopPropagation和preventDefault其他事件选项 事件操作员对throttle和debounce支持 用于在NgZone外部NgZone并且仅在platformBrowser内部绑定的角度事件选项 该模块仅压缩3KB ,因此...
在JavaScript中,事件传播是DOM元素之间的一种交互方式,它分为三个阶段:捕获阶段、目标阶段和冒泡阶段。...因此,掌握事件冒泡和`stopPropagation()`等相关知识是每个JavaScript开发者必备的技能。
阻止事件冒泡的方法主要有两种:`event.stopPropagation()` 和 `event.stopImmediatePropagation()`。这两种方法在不同的场景下有不同的应用。 1. `event.stopPropagation()` 这个方法可以阻止事件继续在DOM树中...
除了`stopPropagation()`,jQuery还提供了`event.stopImmediatePropagation()`方法,它不仅阻止当前事件的冒泡,还会停止同一事件在同一元素上其他事件处理程序的执行。如果一个元素有多个相同的事件监听器,这会...
事件传播包括三个阶段:捕获阶段、目标阶段和冒泡阶段。了解这三个阶段对于掌握如何阻止事件传播至关重要。 1. **捕获阶段**: 当事件发生时,它会从DOM树的根节点开始向下传递,直到到达事件的目标元素。在这个...
- `.self`:只允许事件在当前元素上触发,不会影响到子元素,即`event.stopPropagation()`和`event.stopImmediatePropagation()`的组合。 - `.once`:事件只触发一次,之后会自动解绑,确保事件监听器只执行一次。...
这可以通过在事件处理函数中使用`event.stopPropagation()`来阻止事件继续冒泡,或者使用`event.stopImmediatePropagation()`来立即停止所有后续的事件处理。 总之,理解JavaScript中的事件冒泡机制对于编写高效的...
currentTarget和target属性帮助我们区分事件触发和处理的上下文,type属性允许我们以一种高效的方式处理多种事件,而stopPropagation()和stopImmediatePropagation()提供了灵活的事件处理控制手段。掌握这些基础知识...
合成事件提供了与原生事件相似的API,但不完全相同,如`event.preventDefault()`用于阻止默认行为,而`event.stopPropagation()`在React中并不阻止冒泡,应使用`event.stopImmediatePropagation()`来阻止事件进一步...
此外,Window对象和Event对象也常常和其他JavaScript特性结合使用,比如事件委托(Event Delegation)、事件修饰符(如`event.preventDefault()`和`event.stopPropagation()`)以及自定义事件等,这些都极大地提高了...
通过`event.stopPropagation()`可以阻止事件冒泡,`event.stopImmediatePropagation()`则能阻止同级事件处理程序的执行。 此外,还有`event.preventDefault()`方法,它可以阻止事件的默认行为,比如点击链接跳转、...
使用`event.stopPropagation()`和`event.stopImmediatePropagation()`来控制事件传播,确保在不同浏览器中行为一致。 3. **CSS样式操作**: - IE浏览器有自己的style属性,如`element.styleExpression`,而其他...
`event.stopPropagation()`可以阻止事件的进一步传播,而`event.stopImmediatePropagation()`则可阻止同一元素上后续相同事件类型的监听函数执行。`event.preventDefault()`用于阻止事件的默认行为。 **Ajax和Fetch...
- `event.stopPropagation()`阻止事件冒泡,`event.stopImmediatePropagation()`阻止同级事件处理函数执行。 10. **DOMContentLoaded与load事件** - `DOMContentLoaded`事件:当DOM解析完成,但资源如图片、样式...
需要注意的是,event.stopImmediatePropagation()和event.stopPropagation()在阻止事件传播方面有所不同。stopImmediatePropagation方法阻止同一个元素上的其他事件监听器被触发,而stopPropagation方法只阻止事件...
### 阻止浏览器的默认事件和冒泡 在网页开发过程中,经常需要处理各种用户交互行为,如点击、拖拽、键盘输入等。这些行为通常由浏览器默认处理,但有时候我们希望对某些操作进行自定义处理,这就涉及到阻止浏览器的...
例如,如果你在一个子元素上有一个事件监听器,并且你希望该事件只在此元素上执行,而不是影响到其父元素,那么就可以在事件处理函数中使用`event.stopPropagation()`。这样,事件就不会被父元素接收到,从而实现了...
博客文章可能还讨论了事件冒泡和事件捕获的概念,以及如何通过`event.stopPropagation()`和`event.stopImmediatePropagation()`来控制事件的传播。此外,可能会介绍`event.preventDefault()`方法阻止默认行为,比如...
此外,`event.stopImmediatePropagation()`还可以阻止同一元素上其他事件处理器的执行。 关于标签"源码",这可能提示我们去查看和理解事件冒泡的底层实现。在浏览器的源码中,事件处理机制是由DOM标准定义的,不同...
事件冒泡是指事件从目标节点向上冒泡到父节点的过程,而事件阻止(stopPropagation)则可以阻止事件继续向上冒泡。此外,事件阻止还可以通过stopImmediatePropagation方法实现,这将阻止同级组件的其他监听器接收到...