js 事件

作者: lucky_yao | 来源:发表于2020-10-05 08:07 被阅读0次

1:什么是事件?

人与机的交互就是事件。

2:事件类型:

ui事件

*onscroll 滚动条事件

onload 页面加载触发

unload 页面关闭触发

onresize 改变浏览器窗口触发

onabort 图像加载被中断触发

error 错误信息时触发

焦点事件(表单事件)

*onfocus 获得焦点事件(没有冒泡,浏览器都支持)

*onblur 失去焦点事件(没有冒泡,浏览器都支持)

onfocusin 获得焦点事件(有冒泡,IE支持)

onfocusout 失去焦点事件(有冒泡,IE支持)

onselect 选中文本时触发

*onchange 当改变一个元素的值且失去焦点时

鼠标事件

*onclick 当用户单击对象时

*ondblclick 当用户双击对象时

*onmouseout 移出事件

*onmouseover 移入事件

*onmousemove 移入元素的内部不断的移动时触发

onmousedown 在用户按下了任意鼠标按钮时触发

onmouseup 在用户释放鼠标按钮时触发

键盘事件

onKeydown: 当用户按下键盘上的任意键时触发。

onKeypress: 当用户按下键盘上的字符键时触发。

onKeyup: 当用户释放键盘上的键时触发。

keyCode 返回键盘键对应的编码

3:事件的传播机制?

事件分为2种传播机制(事件流):

1:冒泡 (IE提出的事件流是冒泡)

2:捕获  (谷歌和火狐提出的事件流是捕获)

4:什么是冒泡事件?

1:冒泡事件是由微软公司提出的,从触发底部事件一直延续到最外层,这个现象就是冒泡!

2:只有嵌套关系的标签和都是一样的事件才可能产生冒泡!

5:阻止冒泡事件的方法:

1:evt.stopPropagation() 无法阻止 IE 低版本事件冒泡;

2: evt.cancelBubble = true;兼容 IE 低版本冒泡;

6:阻止冒泡事件的兼容写法:

if(evt.cancelBubble=true){

evt.cancelBubble=true;

}else{

evt.stopPropagation();

}

7:封装阻止冒泡事件方法:

function stopBubble(event){

    if(event.stopPropagation){

        event.stopPropagation();

    }else{

        event.cancelBubble = true;

    }

}

8:DOM0事件处理程序:

1:简单来说就是所有的事件叫DOM0事件。

    举例:

    onclick,onmouseover,onmouseout....

    2:DOM就是文档对象模型,0是指这个事件的最初版本

9: DOM2事件处理程序:

1:addEventListener(事件,函数,布尔值)   绑定事件方法  IE不支持

    举例:

        addEventListener('click',function(){

        },false)

2:是 true 的话是捕获事件,是 false 的话是冒泡事件;

3:removeEventListener() 删除事件方法  IE不支持

10: IE的DOM2方法:

attachEvent('事件',函数)

detachEvent('事件',函数)

11:事件委托

利用冒泡的原理,把事件加到父级上,触发执行效果。

把该是自己的事件交给其他标签来完成,就是事件委托!

把li的事件委托给父元素ul来完成。

事件委托只能是把子元素的事件委托给父元素。

12:事假委托的优点:

1:提高代码性能,运行速度加快

2:节省内存空间

13: 事件源的兼容

target 是event对象下面的属性,这个属性指向事件源

event.target 是w3c的写法,ie浏览器不支持

event.srcElement 这是IE的写法(兼容低版本IE)

兼容写法

var targt=e.target||e.srcElement;

相关文章

  • js(事件)

    js 事件js事件.png

  • js操作页面三步骤

    js操作页面三步骤 js事件 鼠标事件 文档事件 键盘事件 表单事件 事件对象 js操作内容 js操作样式 页面转...

  • 事件

    1、鼠标的移入移除js部分 2、鼠标事件js部分 3、事件对象js部分 4、键盘事件js部分 5、输入框事件js部...

  • 20、jQuery 事件机制

    20、jQuery 事件机制 原生js事件与jQuery事件: (1)用原生的js给div注册事件 原生js注册相...

  • javascript 中的事件机制

    js之事件机制 1、事件初探 1.1 js事件的概述 JavaScript事件:JavaScript是基于事件驱动...

  • JavaScript的事件机制详解

    【js事件详解】js事件封装函数,js跨浏览器事件处理机制 一、事件流 事件流描述的是从页面中接受事件的顺序。IE...

  • JS的事件绑定和事件流模型

    一、JS事件 (一)JS事件分类 1.鼠标事件: click/dbclick/mouseover/mouseout...

  • js事件 事件冒泡

    js事件的分类 事件的类型:有鼠标事件,键盘事件,HTML事件,变化事件 注意:js中的事件前面要加on(如:on...

  • JS事件相关基础

    js事件: 键盘事件: JS中的事件冒泡和事件捕获: 1、事件冒泡。如下代码: 点击button事件,连同父元素绑...

  • 2019-01-11 input框事件,jQuery其他事件,自

    js事件的分类事件的类型:有鼠标事件,键盘事件,HTML事件,变化事件注意:js中的事件前面要加on (如:onc...

网友评论

      本文标题:js 事件

      本文链接:https://www.haomeiwen.com/subject/hidryktx.html