码迷,mamicode.com
首页 > Web开发 > 详细

JS事件

时间:2019-06-24 21:16:57      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:注册   chm   das   strong   微软雅黑   function   down   ext   窗体类   

一、事件绑定:

  (1) ele.onxxx=function () {};  //同一个元素只能绑定一次;

  (2) obj.addEventListener(type,fn,false);  //能绑定多个,IE9不兼容;

  (3) obj.attachEvent(‘on‘ +type,fn);  //IE独有

二、事件解除:

  (1) ele.onclick=null/false/"";

  (2) ele.romoveEventListener(type,fn,false);

  (3) ele.detachEvent(‘on‘+type,fn);

  注:若绑定匿名函数,则23两方法无法解除;

三、事件对象:

  (1) event||window.event; 兼容IE

  (2) 事件源对象:

    1) event.target;  //火狐只有这个

    2) event.srcElement; //IE只有这个

四、事件分类:

  (1) 鼠标事件:

    click,mousedown,mousemove,mouseup

    contextmenu,mouseenter,mouseleave

    mouseover,mouseout //子元素也会触发

    event.button:0/1/2;区分鼠标按键;(mousedown)

  (2) 移动端:touchstart,touchmove,touchend

  (3) 键盘事件:keydown>keypress>keyup

  注:keydown触发一次/keypress长按一直触发;

  (4) 文本类操作事件:

    1) input;  //有值改变就触发;

    2) focus//获得焦点;

    3) blur;  //失去焦点;

    4) change;  //有值改变,并失去焦点触发;

  (5) 窗体类事件:scroll,load;

  (6) window.onresize=function() {};  //监控浏览器尺寸

五、事件处理模型—事件冒泡/捕获:

  (1)冒泡事件:结构上(非视觉上)嵌套关系的元素,即同一事件,自子元素冒泡向父元素。(自底向上)

  (2)捕获事件:结构上(非视觉上)嵌套关系的元素,即同一事件,自父元素捕获至子元素(事件源元素)。(自底向上)

    注:IE没有捕获事件。

  (3)触发顺序:先捕获,后冒泡。

  (4focus,blur,change,submit,reset,select等事件不冒泡。

六、取消冒泡:

  (1) event.stopPropagation();

  (2) event.cancelBubble=true;  //IE独有

七、阻止默认事件:a标签跳转,右键菜单等)

  (1) return false;  //以对象属性方式注册事件才生效

  (2) event.preventDefault();  //IE9以下不兼容

  (3) event.returnValue=false;  //兼容IE

  例:取消右键

  function.oncontextmenu=function (e){

    e.preventDefault();

  }

JS事件

标签:注册   chm   das   strong   微软雅黑   function   down   ext   窗体类   

原文地址:https://www.cnblogs.com/Tractors/p/11079364.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!