jQuery事件相关方法
1.前言
如果使用原生JavaScript编程,在不同浏览器获取事件对象的方法并不相同。例如,在IE浏览器中,程序可通过隐式的、全局event对象来获取对象;在Firefor、Opera等浏览器中,程序则通过事件处理函数的第一个参数来获取事件。
jQuery消除了不同浏览器上事件差异。在jQuery中,事件对象总是作为参数传入事件处理函数,不仅如此,原生事件的大量属性也会被复制到jQuery的事件中。
jQuery事件大致包含了以下几种属性和方法:
1) currentTarget:代表在事件冒泡阶段中事件当前所处的DOM元素。
2) data:代表通过bind()、on()、delegate()等方法绑定事件处理函数时传入的data参数。
3) delegateTarget:返回在jQuery中绑定事件处理函数的对象
4) isDefaultPrevented():返回是否调用了事件对象的preventDefault()方法,即是否阻止了默认行为。
5) isImmediatePropagationStopped():返回是否调用了事件对象stopImmediatePropagation()方法,即是否立即 停止事件传播。
6) isPropagationStopped():返回是否调用事件对象的stopProgapation(),即是否阻止事件传播。
7) pageX:返回鼠标点击距离文档左边界的距离。
8) pageY:返回鼠标点距离文档边界的距离。
9) preventDefault():调用该方法阻止事件的默认行为。
10) relatedTarget:返回参与事件的所有其他DOM元素。
11) result:返回该事件触发的事件处理函数执行后的返回值。
12) stopImmediatePropagation():调用该方法立即停止事件传播。
13) stopPropagation():调用该方法停止事件传播。
14) target:返回触发该事件的初始化事件源。
15) timestamp:返回1970-01-01到浏览器创建该事件的时间差,以这毫秒为单位。
16) type:返回事件的类型。
17) which:对于鼠标 、键盘事件,该属性返回激发该事件的鼠标键或键盘键。
2.例子
下面开发了一个键盘控制“n飞机移动的例子,为了键盘控制飞机移动,程序需要根据激发键盘事件的按键进行相应处理。
<!DOCTYPE html>
<html>
<head><meta name="author" content="OwenWilliam" /><meta http-equiv="Content-Type" content="text/html; charset=GBK" /><title> 访问jQuery事件对象 </title>
</head>
<body>
<script type="text/javascript" src="../jquery-1.8.0.js">
</script>
<script type="text/javascript">
// 指定页面加载完成后执行该函数
$(function(){// 获取页面上包含飞机图片的div元素var target = $("body>div:first");// 为body元素的keydown事件绑定事件处理函数$("body").keydown(function(event){switch(event.which){// 按下向左键case 37:target.offset({left:target.offset().left - 4 , top:target.offset().top});break;// 按下向上键case 38:target.offset({left:target.offset().left, top:target.offset().top - 4});break;// 按下向右键case 39:target.offset({left:target.offset().left + 4 , top:target.offset().top});break;// 按下向下键case 40:target.offset({left:target.offset().left , top:target.offset().top + 4});break;}});})
</script>
<div style="position:absolute;"><img src="plane.png" alt="飞机"/></div>
</body>
</html>
3.运行结果
jQuery事件相关方法相关推荐
- 第79天:jQuery事件总结(二)
上一篇讲到jQuery中的事件,深入学习了加载DOM和事件绑定的相关知识,这篇主要深入讨论jQuery事件中的合成事件.事件冒泡和事件移除等内容. 一.合成事件 jQuery有两个合成事件--hove ...
- 49 jQuery事件
技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 1.jQuery事件注册 单个事件注册 语法: element.事件(function() ...
- JQuery事件绑定,bind与on区别
jquery事件绑定 bind:向匹配元素添加一个或多个事件处理器 $(selector).bind("click",data,function); live:向当前或未来的匹配元 ...
- jQuery事件的链式写法
<head> <title>jQuery事件的链式写法</title> <script src="jquery-1.9.1.js&q ...
- 2017-6-3 jQuery 事件 DOM操作
1. jQuery 事件: ////hover:相当于相当于把mouseover()mouseout()合二为一//$("#div1").hover(function ()//{/ ...
- jQuery事件之鼠标事件
jQuery事件之鼠标事件 鼠标事件是在用户移动鼠标光标或者使用任意鼠标键点击时触发的. (1):click事件:click事件于用户在元素敲击鼠标左键,并在相同元素上松开左键时触发. ...
- jQuery 事件用法详解
目录 简介 实现原理 事件操作 绑定事件 解除事件 触发事件 事件委托 事件操作进阶 阻止默认事件 阻止事件传播 阻止事件向后执行 命名空间 自定义事件 事件队列 jquery中文文档 简介 jque ...
- jQuery 事件绑定方法(bind hover toggle live.... )、删除事件方法(unbind, die)及 事件对象
事件绑定方法: 1.<type>(function) $("button").click(function(){... }); 2.bind(map) $(" ...
- JQuery-学习笔记06【高级——JQuery事件绑定和切换】
Java后端 学习路线 笔记汇总表[黑马程序员] JQuery-学习笔记01[基础--JQuery基础]--[day01] JQuery-学习笔记02[基础--JQuery选择器] JQuery-学习 ...
- 什么是 jQuery 事件
jQuery事件是DOM事件的封装,同时支持自定义的扩展.在程序设计中,事件和代理有着相似的作用: 它们提供了一种机制,使得行为的实现方式和调用时机可以分离. 不谈jQuery,DOM本身就提供了一系 ...
最新文章
- 吴恩达老师深度学习视频课笔记:人脸识别
- iOS开发之使用CocoaPods更新第三方出现“target overrides the `OTHER_LDFLAGS`……”问题解决方案
- 马斯克雇机器狗勘察火箭爆炸现场,网友:《黑镜》现实版
- 被捞起的“海底数据中心”,故障率仅为陆地1/8,微软新型数据存储模式又有新进展...
- linux远程连接硬件加速,linux – 没有X的硬件加速
- 计算机系统结构树形流程图,计算机系统结构 第七章自考练习题答案
- 【设计模式】—— 中介者模式Mediator
- java csv下载_java 生成csv文件,弹出下载对话框。。。
- 配置babel_Babel 7 下配置 TypeScript 支持
- NOI数据结构:后缀数组
- Elasticsearch(六) java代码操作Es进行高级查询match、match_all
- 绝了!RNN 还会写藏头诗!
- 麦咖啡将投资25亿在中国内地布局超过4000家;星巴克中国咖啡创新产业园正式动工 | 美通企业日报...
- SiamRPN代码分析:architecture
- 世界上程序员最好的学习法:费曼学习法
- torch.cumsum(),torch.sum()
- kali虚拟机root密码错误
- 我的10年计算机之路
- 五大方面:机器学习如何在不久的将来改变教育
- Linux配置NAT网络