事件对象event,每当一个事件被触发的时候,就会随之产恒一个事件对象event,该对象中主要包括了关于该事件的基本属性,事件类型type(click、dbclick等值)、目标元素target(我的理解是事件源对象,即触发该事件的dom元素)等,以及一些与该事件相关的方法。取消事件默认行为preventDefault()、组织事件继续冒泡或捕获stopPropagation()等等,这里我仅仅列举了,项目中我用到的属性和方法。

既然事件被触发。就随之产生了一个event对象。笔者在IE中測试了。不须要通过赋值就可以使用,也许低版本号的须要吧,火狐浏览器是须要对其进行赋值的,在这里我认为须要养成一个习惯。多谢一行代码呗。每次在事件处理程序中使用event对象,都通过赋值的方式去使用:

var event = event||window.event;

事实上,默认參数数组中第一元素就是event对象,也就是说,能够用数组元素赋值

var event = arguments[0];

type属性。应该是最easy理解的,事件类型。单击click,双击dbclick等等

target属性,触发事件的dom元素对象。我看到网上说target是火狐浏览器。srcElement是IE中的,可是我測试的结果是。在IE11中两个都能够使用了,一样的效果。可是火狐中仅仅能使用target属性,浏览器之间的实现方式能不能有个通用的标准呢,兼容性非常纠结呢,所以和event对象的获取一样,建议是通过赋值的方式去获取触发事件的dom对象:

var target = event.target||event.srcElement;

preventDefault()方法是用来取消默认事件行为的,比方超链接,点击超链接,会依据href属性,跳到还有一个页面。之前在项目中。就遇到非常多须要取消超链接的默认点击行为,在点击事件处理程序中。取消默认的事件行为,能够例如以下操作:

if(event.preventDefault){//推断该函数是否存在
event.preventDefault;
}else{
returnValue = false;
}

这样也实现了取消超链接的默认行为,事实上在项目中,还看到别的同事使用的别的方式,也取消是默认的点击行为

<a href="javaScript:void(0);">也行</a>

stopPropagation()方法直接就取消事件的继续冒泡或者捕获了,这个非常有用的,假设父元素和子元素都绑定了某个相同类型的事件,比方都绑定了click事件。如今用户触发了一个事件,事件在捕获阶段被触发,针对父元素,则会继续向下捕获。进而触发子元素的事件。针对子元素。在冒泡阶段被触发,也相同由于冒泡行为,会触发父元素的事件。因此往往须要取消这样的无意的触发。

if(event.stopPropagation){//推断是否存在
event.stopPropagation();
}else{
event.cancleBubble = true;
}

2014年9月30日22:04:18

兴许项目中。假设还是用到了别的相关操作,我在继续补充

javaScript中的事件对象event的更多相关文章

  1. javaScript中的事件对象event是怎样

    事件对象event,每当一个事件被触发的时候,就会随之产恒一个事件对象event,该对象中主要包含了关于该事件的基本属性,事件类型type(click.dbclick等值).目标元素target(我的 ...

  2. JavaScript中的事件对象

    JavaScript中的事件对象 JavaScript中的事件对象是非常重要的,恐怕是我们在项目中使用的最多的了.在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含这所有与事件有 ...

  3. JavaScript 中的事件对象(读书笔记思维导图)

    在触发 DOM 上的某个事件时,会产生一个事件对象 event,这个对象中包含着所有与事件有关的信息.包括导致事件的元素.事件的类型以及其他与特定事件相关的信息.例如,鼠标操作导致的事件对象中,会包含 ...

  4. Javascript中的事件对象和事件类型

    接上次看JS的事件冒泡和捕获,所以顺带就把事件相关的知识都看完好了 而且想到一个好的学习方法,第一天自己看,第二天把前一天学习的东西写下来,一方面可以当复习,一方面当重新整理并且分享 事件对象 事件处 ...

  5. javaScript动画3 事件对象event onmousemove

    事件对象的获取(event的获取) var event = event || window.event;(主要用这种) screenX.pageX和clientX的区别 PageY/pageX: 鼠标 ...

  6. 彻底理解javascript 中的事件对象的pageY, clientY, screenY的区别和联系。

    说到底, pageY, clientY, screenY的计算,就是要找到参考点, 它们的值就是: 鼠标点击的点----------- 和参考点指点----------的直角坐标系的距离 stacko ...

  7. 谈谈事件对象-event

    JavaScript 中的事件对象(event) 当我们每次触发一种事件(如点击事件),我们会在回调函数中传入事件对象event.今天就来来谈谈. 1.当我们想判断当前事件是我们想要的事件类型时,可以 ...

  8. javascript中的事件Event

    一.事件流 1.事件流:描述的是从页面中接受事件的顺序 IE的事件流是事件冒泡流,Netscape的事件流是事件捕获流. 2.事件冒泡 IE的事件流叫做事件冒泡(event bubbing),即事件开 ...

  9. JavaScript:事件对象Event和冒泡

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 绑定事件的两种方式 我们在上一篇文章中已经讲过事件的概念.这里讲一下注册 ...

随机推荐

  1. Codeves 2800 送外卖 状态压缩DP+floyd

    送外卖     题目描述 Description 有一个送外卖的,他手上有n份订单,他要把n份东西,分别送达n个不同的客户的手上.n个不同的客户分别在1~n个编号的城市中.送外卖的从0号城市出发,然后 ...

  2. ubuntu解压命令全览(rar)

    sudo apt-get install p7zip-full Ubuntu下解压rar文件的方法 2010-05-13 12:47 一般通过默认安装的ubuntu是不能解压rar文件的,只有在安装了 ...

  3. Python笔记(七)

    # -*-coding:utf-8-*- # Python 文件I/O # 打印到屏幕 #print 1234567 # 读取屏幕输入 #input_str=raw_input("Pleas ...

  4. 有关PHP数组

    在PHP中,数组就是关键字和值的集合,我们可以使用array关键字创建: $arr=array[100,200,300,400,500]:           //这是一个自定义数组,数组里面的值是自 ...

  5. SQL Server死锁排查

    1. 死锁原理 根据操作系统中的定义:死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所站用不会释放的资源而处于的一种永久等待状态. 死锁的四个必要条件:互斥条件(Mutua ...

  6. hdu 3416 Marriage Match IV 【 最短路 最大流 】

    求边不可重复的最短路条数 先从起点到终点用一次dijkstra,再从终点到起点用一次dijkstra,来判断一条边是否在最短路上 如果在,就将这条边的两个端点连起来,容量为1 再跑一下dinic(), ...

  7. swift使用查阅资料备份3

    自主学习之RxSwift(二) -----flatMap https://blog.csdn.net/chelongfei/article/details/50995603 RxSwift 系列(九) ...

  8. 深入剖析 iOS 性能优化

    问题种类 时间复杂度 在集合里数据量小的情况下时间复杂度对于性能的影响看起来微乎其微.但如果某个开发的功能是一个公共功能,无法预料调用者传入数据的量时,这个复杂度的优化显得非常重要了.上图列出了各种情 ...

  9. ZBrush中如何做不同图案的遮罩

    ZBrush®软件中不仅可以创建矩形遮罩还可以创建有图案的遮罩,且是非常简单有效的,那么究竟怎样做出神奇的效果,本文将为您详细讲解. 有关反转遮罩.清除遮罩的详细内容,请点击:ZBrush中如何反选遮 ...

  10. luoguP4921 情侣?给我烧了! 组合数_容斥原理_计数问题

    Code: #include <cstdio> #include <algorithm> #include <cstring> #define setIO(s) f ...