js事件流
event:事件对象,当一个事件发生的时候,和当前这个对象发生的这个事件有关的一些详细的信息都会被临时保存在一个指定地方-event对象,供我们在需要调用。
event对象必须是在一个事件调用的函数里
ie/chrome :event是一个全局对象
ff:标准 事件对象是通过事件函数的第一个参数传入 如果一个函数是被事件调用的那么这个函数定义的第一个参数就是事件对象
event兼容:
function(ev){
var e=ev || event;
}
onmousemove:当鼠标在一个元素上面移动时触发
//触发频率不是像素,而是时间间隔,在一个指定时间内,如果鼠标和上一次的位置发生改变那么就会触发一次
//
事件流
事件冒泡:当一个元素接收到事件时,会把他接收到的所有传播给他的父级
传播的是事件;一直到顶层window;
event.cancelBubble=true;//阻止当前事件的冒泡
事件的第一种绑定形式
document.onclick=fn1//
document.onclick=fn2//会覆盖前面绑定的fn1
事件的第二种绑定形式
//给一个对象的同一个事件绑定多个不同的函数
ie:obj.attachEvent("onclick",fn1)
ie:obj.attachEvent(事件名称,事件函数)
1:没有捕获
2:事件名称有on
3:事件函数执行的顺序:标准ie正序 非标准ie是倒序
4:this指向window
标准:obj.addEventListener(事件名称,事件函数,是否捕获)
这里的事件名称是没有on的 默认是false不捕获(冒泡)true(捕获)
1:有捕获
2:事件名称没有on
3:事件执行的顺序是正序
4:this是触发该事件的对象
fn1()执行函数
fn1.call() 调用函数
函数下的一个方法,call方法第一个参数可以改变函数执行过程中的内部指向,call方法第二个参数开始就是原来函数的参数列表
事件捕获
ie是不能捕获的
addEventlistener(obj,"click",true) //false改成true那么就是事件捕获了,事件自上往下传播,从外往里传播
事件的取消:
取消普通事件与取消事件绑定函数
1:document.onclick=fn1;
document.onclick=null;//取消
2:ie:obj.detachEvent(事件,事件函数);
标准:obj.removeEventListener(事件,事件函数,false)
js事件流的更多相关文章
- js事件流机制冒泡和捕获
JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间. 事件流 从页面中接收事件的顺序称为事件流. IE --> 事件冒泡流 Netsc ...
- JS事件流、事件监听、事件对象、事件委托
JS事件流: 01.DOM级别和DOM事件 02.JS事件流:页面中接收事件的顺序 事件冒泡阶段-->处于目标阶段-->事件捕获阶段 (事件捕获总发生在事件冒泡前面) 03.捕获:从外向里 ...
- JS事件流模型
JS事件流模型 事件捕获Event Capturing是一种从上而下的传播方式,以click事件为例,其会从最外层根节向内传播到达点击的节点,为从最外层节点逐渐向内传播直到目标节点的方式. 事件冒泡E ...
- js 事件流和事件冒泡阻止
js 事件流和事件冒泡阻止 事件流 当浏览器发展到第四代的时候(IE4与Netscape4)浏览器开发团队遇到一个有意思的的问题: 页面的哪一部分会拥有某个特定的事件? 比如在纸上画上一组同心圆,如果 ...
- JS事件流(W3C与IE区别)
一.JS事件的3个阶段:捕获.目标.冒泡,低版本IE不支持捕获阶段: 二.在浏览器解析事件的时候,有两种触发方式:一种叫做Bubbling(冒泡),另外一种叫做Capturing(捕获). 冒泡的方式 ...
- JS——事件流与事件处理程序
1.事件流:从页面中接收事件的顺序 1.1 IE :事件冒泡流1.2 Netscape :事件捕获1.3 DOM事件流 :事件捕获阶段——事件目标阶段——事件冒泡阶段DOM2级事件规定 :捕获阶段不会 ...
- JS事件流、DOM事件流、IE事件处理、跨浏览器事件处理、事件对象与类型
事件的移除 removeEventListener() 第二个参数需要指定要移除的事件句柄,不能是匿名函数,因为无法识别 想要移除成功,那么三个参数必须跟addEventListener中的三个完全一 ...
- js事件流、事件处理程序/事件侦听器
1.事件流 事件冒泡 IE的事件流叫做事件冒泡(event bubbling),即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档). 事件捕获 ...
- JS事件流理解
事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字. 事件是javaScript和DOM之间的桥梁. 你若触发,我便执行--事件发生,调用它的处理函数执行相 ...
随机推荐
- android 自定义控件——(三)水平线、虚线
----------------------------------View虚线或者直线(源代码下有属性解释)--------------------------------------------- ...
- 【Swift】iOS UICollectionView 计算 Cell 大小的陷阱
前言 API 不熟悉导致的问题,想当然的去理解果然会出问题,这里记录一下 UICollectionView 使用问题. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cn ...
- C#求斐波那契数列第30项的值(递归和非递归)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Spark——共享变量
Spark执行不少操作时都依赖于闭包函数的调用,此时如果闭包函数使用到了外部变量驱动程序在使用行动操作时传递到集群中各worker节点任务时就会进行一系列操作: 1.驱动程序使将闭包中使用变量封装成对 ...
- QStatusBar的用法
QStatusBa,状态栏是位于主窗口的最下方,提供一个显示工具提示等信息的地方.QMainWindow类里面就有一个statusBar()函数,用于实现状态栏的调用.以下例子都在QMainWin ...
- Fedora javac 命令提示 [javac: 未找到命令...]
[joy@localhost ~]$ java -version openjdk version "1.8.0_91" OpenJDK Runtime Environment (b ...
- Mac下QT错误,Xcode配置解决办法
出现错误: Xcode not set up properly. You may need to confirm the license agreement by running / 解决办法如下: ...
- 关于 AVI 的一些代码
#ifndef __HSS_AUTO_REVISE_AVI_FRAMERATE_HSS__ #define __HSS_AUTO_REVISE_AVI_FRAMERATE_HSS__ /******* ...
- linux 守护程序小记(指定进程不存在则启动 )
最近想在debian 下做个守护进程.用于守护指定的程序一直处于运行状态.网上查了下,有Crontab方式和写脚本执行方式. Crontab Crontab 是系统自带的,类似于Windows的计划任 ...
- java中的匿名内部类总结
原文地址: http://www.cnblogs.com/nerxious/archive/2013/01/25/2876489.html 匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内 ...