09 事件对象

上篇介绍完我们js的事件流的概念之后,相信大家对事件流也有所了解了。那么接下来我们看一下jquery的事件操作。

 

在说jquery的每个事件之前,我们先来看一下事件对象

事件对象

Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。

  1. 什么时候会产生Event 对象呢? 

         例如: 当用户单击某个元素的时候,我们给这个元素注册的事件就会触发,该事件的本质就是一个函数,而该函数的形参接收一个event对象

       2.事件通常与函数结合使用,函数不会在事件发生前被执行!

 

事件流的由来(了解)

由于微软和网景乱搞,后来必须要为事件传播机制,制定一个标准,因为事件捕获是网景公司开发出来的,而事件冒泡是由微软公司开发出来的,它们都想要自己的技术成为标准,所以导致这两个公司老是干架,制定标准的人为了不让它们干架,所以研发了事件流.

 

关于event对象

  • 在触发的事件的函数里面我们会接收到一个event对象,通过该对象我们需要的一些参数,比如说我们需要知道此事件作用到谁身上了,就可以通过event的属性target来获取到(IE暂且不谈),或者想阻止浏览器的默认行为可以通过方法preventDefault()来进行阻止.以下是event对象的一些属性和方法
属性描述
altKey返回当事件被触发时,”ALT” 是否被按下。
button返回当事件被触发时,哪个鼠标按钮被点击。
clientX返回当事件被触发时,鼠标指针的水平坐标。
clientY返回当事件被触发时,鼠标指针的垂直坐标。
ctrlKey返回当事件被触发时,”CTRL” 键是否被按下。
metaKey返回当事件被触发时,”meta” 键是否被按下。
relatedTarget返回与事件的目标节点相关的节点。
screenX返回当某个事件被触发时,鼠标指针的水平坐标。
screenY返回当某个事件被触发时,鼠标指针的垂直坐标。
shiftKey返回当事件被触发时,”SHIFT” 键是否被按下
  • IE 属性(除了上面的鼠标/事件属性,IE 浏览器还支持下面的属性)
属性描述
cancelBubble如果事件句柄想阻止事件传播到包容对象,必须把该属性设为 true。
fromElement对于 mouseover 和 mouseout 事件,fromElement 引用移出鼠标的元素。
keyCode对于 keypress 事件,该属性声明了被敲击的键生成的 Unicode 字符码。对于 keydown 和 keyup
offsetX,offsetY发生事件的地点在事件源元素的坐标系统中的 x 坐标和 y 坐标。
returnValue如果设置了该属性,它的值比事件句柄的返回值优先级高。把这个属性设置为
srcElement对于生成事件的 Window 对象、Document 对象或 Element 对象的引用。
toElement对于 mouseover 和 mouseout 事件,该属性引用移入鼠标的元素。
x,y事件发生的位置的 x 坐标和 y 坐标,它们相对于用CSS动态定位的最内层包容元素。

 

 

  • 标准 Event 属性 下面列出了 2 级 DOM 事件标准定义的属性。
属性和方法描述
bubbles返回布尔值,指示事件是否是起泡事件类型。
cancelable返回布尔值,指示事件是否可拥可取消的默认动作。
currentTarget返回其事件监听器触发该事件的元素。
eventPhase返回事件传播的当前阶段。
target返回触发此事件的元素(事件的目标节点)。
timeStamp返回事件生成的日期和时间。
type返回当前 Event 对象表示的事件的名称。
initEvent()初始化新创建的 Event 对象的属性。
preventDefault()通知浏览器不要执行与事件关联的默认动作。
stopPropagation()不再派发事件。

Event对象的一些兼容性写法(了解)

    • 获得event对象兼容性写法 
      event || (event = window.event);
    • 获得target兼容型写法 
      event.target||event.srcElement
    • 阻止浏览器默认行为兼容性写法 
      event.preventDefault ? event.preventDefault() : (event.returnValue = false);
    • 阻止冒泡写法 
      event.stopPropagation ? event.stopPropagation() : (event.cancelBubble = true);

转载于:https://www.cnblogs.com/mayugang/p/10338705.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365744.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Struts2,Hibernate和MySQL创建个人MusicManager Web应用程序的研讨会

概述: 在本研讨会教程中,我们将使用Struts 2,Hibernate和MySQL数据库开发一个个人音乐管理器应用程序。 该Web应用程序可用于将您的音乐收藏添加到数据库中。 我们将显示用于添加唱片的表格,并在下面显示所有音乐收藏。 通过单击“…

链表快速排序python_Python一行代码实现快速排序的方法

今天将单独为大家介绍一下快速排序! 一、算法介绍 排序算法(Sorting algorithm)是计算机科学最古老、最基本的课题之一。要想成为合格的程序员,就必须理解和掌握各种排序算法。其中"快速排序"(Quicksort&…

自定义滚动条样式

啥都不说先看图: 注: 只适合chrom,不适用IE和fireFox 下面展示代码: 1 <html lang"en">2 <head>3 <meta charset"UTF-8">4 <title>CSS3自定义滚动条-轩枫阁</title>5 <style>6 header7 {8 font-family: …

解决zsh下ls命令无高亮颜色问题

问题原因因为本人比较菜不清楚, 但总归瞎弄解决了, 做个记录 解决方法 进入用户目录下的.bashrc(~/.bashrc), 寻找ls相关配置找到后将相关配置复制到.zshrc(~/.zshrc)中如果找不到的话, 可以复制我找到的直接复制. if [ -x /usr/bin/dircolors ]; thentest -r ~/.dircolors &am…

[折半搜索][has] Jzoj P4250 路径

Description A国有n个城市&#xff0c;编号为1到n&#xff0c;任意两个城市之间有一条路。shlw闲得没事干想周游A国&#xff0c;及从城市1出发&#xff0c;经过且仅经过除城市1外的每个城市1次&#xff08;城市1两次&#xff09;&#xff0c;最后回到城市1。由于shlw很傻&#…

使用Guava CharMatcher和Apache Commons Lang StringUtils确定字符串中字符或整数的存在

最近Reddit上的帖子提出了一个问题&#xff1a;“ 是否存在一种预定义的方法来检查变量值是否包含特定字符或整数&#xff1f; ”基于问题的标题也被以另一种方式问到&#xff0c;“一种检查变量是否包含诸如列表之类的数字的方法或快速方法&#xff0c;例如或&#xff08;x&am…

rust为什么显示不了国服_Rust编程语言初探

静态、强类型而又不带垃圾收集的编程语言领域内&#xff0c;很久没有新加入者参与竞争了&#xff0c;大概大部分开发者认为传统的C/C的思路已经不太适合新时代的编程需求&#xff0c;即便有Ken Tompson这样的大神参与设计的golang也采用了GC的思路来设计其新一代的语言&#xf…

wps表格粗线和细线区别_详解论文中的表格技术

今天我们主要学习的技能如下&#xff1a;• 怎样用word做论文要求的三线表• 三线表中辅助线的断开• 表格或者图片自动编号1. 先普及一下&#xff0c;论文中的三线表吧。三线表以其形式简洁、功能分明、阅读方便而在科技论文中被推荐使用。三线表通常只有3条线&#xff0c;即顶…

素材

svg: www.sfont.cn/svg/ehed7f 转载于:https://juejin.im/post/5b9b70a8e51d450e4b1bdd33

如何自定义CSS滚动条的样式?

欢迎大家前往腾讯云 社区&#xff0c;获取更多腾讯海量技术实践干货哦~ 本文由前端林子发表 本文会介绍CSS滚动条选择器&#xff0c;并在demo中展示如何在Webkit内核浏览器和IE浏览器中&#xff0c;自定义一个横向以及一个纵向的滚动条。 0.需求 有的时候我们不想使用浏览器默…

RabbitMQ基础知识

RabbitMQ基础知识 一、背景RabbitMQ是一个由erlang开发的AMQP&#xff08;Advanced Message Queue &#xff09;的开源实现。AMQP 的出现其实也是应了广大人民群众的需求&#xff0c;虽然在同步消息通讯的世界里有很多公开标准&#xff08;如 COBAR的 IIOP &#xff0c;或者是 …

使用Spring RestTemplate和Super类型令牌消费Spring-hateoas Rest服务

Spring-hateoas为应用程序创建遵循HATEOAS原理的基于REST的服务提供了一种极好的方法。 我的目的不是要展示如何创建服务本身&#xff0c;而是要展示如何将客户端写入服务。 我将要使用的示例服务是Josh Long&#xff08; starbuxman &#xff09;编写的“ the-spring-rest-s…

ansible-playbook 实战案例 全网备份 实时备份

目录 ansible-playbook 基础介绍1.YAML三板斧2. ansible playbook 安装apache 示例案例 全网备份 实时备份环境规划目录规划base.yamlrsync.yamlnfs.yamlsersync.yamlweb.yamlmail.yamlansible-playbook 基础介绍 playbook是由一个或多个模块组成的&#xff0c;使用多个不同的模…

iview 级联选择组件_使用 element-ui 级联插件遇到的坑

需求描述【省市区三级联动】组件&#xff1a;Cascader 级联选择器后端需要所选中的地区的名字&#xff0c;如&#xff1a;[北京市, 北京市, 东城区]获取后端省市区具体列表的接口返回数据&#xff1a;// 省 - 参数1 [{value: 1,label: 北京市},... ] // 市 - 参数2 [{value: 1,…

python高级语法装饰器_Python高级编程——装饰器Decorator超详细讲解上

Python高级编程——装饰器Decorator超详细讲解&#xff08;上篇&#xff09;送你小心心记得关注我哦&#xff01;&#xff01; 进入正文全文摘要 装饰器decorator&#xff0c;是python语言的重要特性&#xff0c;我们平时都会遇到&#xff0c;无论是面向对象的设计或者是使用相…

深入理解CPU和异构计算芯片GPU/FPGA/ASIC (上篇)

王玉伟&#xff0c;腾讯TEG架构平台部平台开发中心基础研发组资深工程师&#xff0c;专注于为数据中心提供高效的异构加速云解决方案。目前&#xff0c;FPGA已在腾讯海量图片处理以及检测领域已规模上线。 随着互联网用户的快速增长&#xff0c;数据体量的急剧膨胀&#xff0c;…

jenkins-基础配置

一&#xff0c;配置远程连接服务器 系统管理 --> 系统设置 SSH remote hosts 二&#xff0c;设置docke的URL&#xff08;设置jenkins构建镜像时候所连接的docker url &#xff0c;参考 docker开启远程访问https://www.cnblogs.com/galsnag/articles/10069709.html&#xf…

JSF:直接从页面将参数传递给JSF操作方法,这是JavaEE 6+的一个不错的功能

Java企业版JavaEE 6中提供的JSF 2的一项不错的功能是&#xff0c;您可以将参数传递给任何操作组件&#xff08;例如commandButton或commandLink组件&#xff09;的操作方法。 基于此&#xff0c;您可以最大程度地减少托管bean中的方法数量。 另外&#xff0c;为了最小化在bea…

CCF CSP个人题解汇总

趁着这波考CCF热来骗一波访问量 祝自己免修算法RP 区域赛RP 1、2题汇总在这&#xff1a;https://www.cnblogs.com/QAQorz/p/9650890.html 201803-4 棋局评估&#xff08;对抗搜索&#xff09;&#xff1a;https://www.cnblogs.com/QAQorz/p/9650828.html 201709-4 通信网络&…

海洋主题绘画_深圳举办风帆时代海洋绘画作品展,展出作品600余件

12月12日&#xff0c;第七届《风帆时代海洋绘画作品展》在位于蛇口邮轮中心3楼的深圳大学海洋文化科普教育基地举行开幕仪式。该项目得到深圳市宣传文化事业专项基金支持&#xff0c;由深圳大学海洋艺术研究中心主办&#xff0c;深圳市海洋文化艺术研究会承办。作为开幕式重要环…