他们是描述事件触发时序问题的术语。事件捕获指的是从document到触发事件的那个节点,即自上而下的去触发事件。相反的,事件冒泡是自下而上的去触发事件。绑定事件方法的第三个参数,就是控制事件触发顺序是否为事件捕获。true,事件捕获;false,事件冒泡。默认false,即事件冒泡。
首先:你不想使用的方法恰恰是推荐的最好的方法,为什么不用推荐的方法呢。
如果实在想用第一种,onclick="F_Bind_ZhongLeiClick(this)"
修改为
onclick="F_Bind_ZhongLeiClick(this);return false;"如果<p>是在<div>里面,那么呢,<P>有一个onclick事件,<div>也有onclick事件,为了触发<P>的点击事件时,不触发父元素的点击事件,那么就需要调用如下函数:
代码如下:
function stopBubble(e){
if(e&&estopPropagation){//非IE
estopPropagation();
}
else{//IE
windoweventcancelBubble=true;
}
}
<a onclick=''>如果要阻止默认事件的触发,即默认的href事件,那么就需要调用如下函数:
代码如下:
function stopDefault( e ) {
//阻止默认浏览器动作(W3C)
if ( e && epreventDefault )
epreventDefault();
//IE中阻止函数器默认动作的方式
else
windoweventreturnValue = false;
return false;
}
<iframe src="xxphp" onmousedown="windowparentButtonDown()"></iframe>
应该是
<iframe src="xxphp" onmousedown="windowButtonDown()"></iframe>
吧
明明是在父窗口中写的,为什么还要调用父窗口呀?
你应该在你的 iframe里面写 windowparentButtonDown() 也就是 xxphp 里面写才能调到父窗口
js 锻炼这些没意义,数组有个sort方法,穿个比较函数就可以自动排序。俺会冒泡排序。js的功能别关注算法这块的。我个人建议!算法可以用c语言学。一般java、c++这种语言算法别人已经写好了。
就是你说的, 如果父div有click事件, div里的span也有click事件, 默认你点span的时候父div的click事件也会被激发, 如果你不想激发父div的click事件, 就在span的click事件中stopPropagation(), 就是这样
以上就是关于JS冒泡和捕获的区别全部的内容,包括:JS冒泡和捕获的区别、js函数中 如何阻止事件冒泡、JS如何阻止事件冒泡等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)