JS-事件流操作

Posted 是非_大道克己

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS-事件流操作相关的知识,希望对你有一定的参考价值。

事件流操作

取消 事件流

 //在 ie中 在需要把调用   事件的属性 : (IE)     cancelBubble 取消冒泡
 evenntObj.cancelBubble = true;
 //cancelBubble IE 支持 但是 火狐不支持(新的版本开始支持了)
 ?
 //在 非ie中 在需要把调用   事件的方法 : (非IE下) stopPropagation(); 停止传播的方法
 evenntObj.stopPropagation();
 ?
 //兼容性写法
 if(document.all){
         evenntObj.cancelBubble=true;
    }else{
         evenntObj.stopPropagation();
    }

事件委托

(原理就是使用 冒泡事件流): 本来该由自己来完成的事情, 然后交给别人来处理了。

事件源

事件发生的源头

获得获得事件源: 使用 事件对象提供的属性 :

得到的是发生事件的元素对象

ie: event对象.srcEelemnt (新版火狐支持) 非ie: event对象..target

 //兼容写法
     if(document.all){
         srcobj = eventObj.srcElement;
    }else{
         srcobj =  eventObj.target;
    }
菜单事件
 元素对象.oncontextmenu = () =>{
    //全局菜单事件,只是鼠标右键触发
         if (event.button == 2) {
 //判断是否为鼠标右键 对非IE
 }
         return false;
         //取消默认菜单
    }
 ?

 

 

以上是关于JS-事件流操作的主要内容,如果未能解决你的问题,请参考以下文章

JS中的事件监听与事件流

js013-事件

将 Node.js 流错误事件传播到异步等待样式代码

js阻止浏览器元素的默认事件与js阻止事件冒泡阻止事件流

JS 事件

js学习笔记:事件——事件流事件处理程序事件对象