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对象.srcElement(新版火狐支持)

非ie: event对象..target

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

 

原文地址:https://www.cnblogs.com/-Archenemy-/p/12405536.html