jQuery中的事件
1、浏览器实现的事件模型
DOM Level 0事件处理的实现是将一个handler赋值给元素的属性,如onclick=function(param1, param2){...}。
缺点是一个事件只能有一个处理函数,即最后一个被赋值的处理函数,之前的全部被覆盖
DOM Level 2事件处理的实现是使用方法addEventListener(eventType, listener, useCapture)
eventType是去掉之前元素属性的"on"前缀,即onclick的eventType是click
listener是事件处理函数的引用,第一个参数是event对象
useCapture是指使用捕捉或冒泡方式处理事件,一般为false,即使用冒泡方式
但是IE没有实现DOM Level 2的事件处理模型,不支持捕捉方式,而且使用方法也不同
attachEvent(eventName,handler)
handler没有将event对象作为第一个参数传入,而是使用window.event
2、用JQuery绑定事件处理到元素
bind(eventType,data,listener) 绑定事件到JQuery对象
eventType:事件类型
data:Object类型,用于listener中使用的数据,可省略
listener:处理函数
还可以对事件进行组合,使用namespace的方式
例如:click.myNamespace,这样可以将几个事件处理作为一个单元处理
eventTypeName(listener)
eventTypeName是指:
blur
change
click
dblclick
error
focus
keydown
keypress
keyup
load
mousedown
mousemove
mouseout
mouseover
mouseup
resize
scroll
select
submit
unload
结果返回包装集
one(eventType,data,listener) 只执行一次绑定的函数
unbind(eventType,listener) 若没有参数则所有的listener都被移除
unbind(event)
3、Event对象实例
Event实例属性
altKey
Set to true if the Alt key was pressed when the event was triggered, false if not. The Alt key is labeled Option on most Mac keyboards.
ctrlKey
Set to true if the Ctrl key was pressed when the event was triggered, false if not. data The value, if any, passed as the second parameter to the bind() command when the handler was established.
keyCode
For keyup and keydown events, this returns the key that was pressed. Note that for alphabetic characters, the uppercase version of the letter will be returned, regardless of whether the user typed an uppercase or lowercase letter. For example, both a and A will return 65. You can use shiftKey to determine which case was entered. For keypress events, use the which property, which is reliable across browsers.
metaKey
Set to true if the Meta key was pressed when the event was triggered, false if not The Meta key is the Ctrl key on PCs and the Command key on Macs.
pageX
For mouse events, specifies the horizontal coordinate of the event relative from the page origin.
pageY
For mouse events, specifies the vertical coordinate of the event relative from the page origin.
relatedTarget
For some mouse events, identifies the element that the cursor left or entered when the event was triggered.
screenX
For mouse events, specifies the horizontal coordinate of the event relative from the screen origin.
screenY
For mouse events, specifies the vertical coordinate of the event relative from the screen origin.
shiftKey
Set to true if the Shift key was pressed when the event was triggered, false if not.
target
Identifies the element for which the event was triggered.
type
For all events, specifies the type of event that was triggered (for example, click). This can be useful if you’re using one event handler function for multiple events.
which
For keyboard events, specifies the numeric code for the key that caused the event, and for mouse events, specifies which button was pressed (1 for left, 2 for middle, 3 for right). This should be used instead of button, which can’t be relied on to function consistently across browsers.
stopPropagation()
preventDefault()
4、用脚本触发事件处理
trigger(eventType) 由于事件触发是从代码产生的,所以没有Event实例,也没有冒泡
eventName()
blur
click
focus
select
submit
toggle(listenerOdd,listenerEven)
listenerOdd 第1、3……次执行的函数
listenerEven 第2、4……次执行的函数
hover(overListener,outListener)
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hemingwang0902/archive/2009/06/09/4255229.aspx
分享到:
相关推荐
本文主要对jQuery中事件和动画的操作进行了总结和分享。 首先,介绍的是jQuery中关于DOM加载完成的事件处理。在传统的JavaScript编程中,window.onload事件只能定义一次,而jQuery提供的$(function(){})在文档的DOM...
jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡jquery-事件冒泡...
在本文中,我们将深入探讨jQuery中关于鼠标滚轮事件的知识点。 首先,让我们了解什么是鼠标滚轮事件。在Web开发中,鼠标滚轮事件是当用户滚动鼠标滚轮时触发的事件。这些事件包括`wheel`,这是HTML5新增的标准事件...
**jQuery绑定事件**是JavaScript库jQuery中的核心功能之一,它极大地简化了DOM元素事件处理的流程,使得开发者能够更加高效地编写代码。在JavaScript原生语法中,为元素添加事件监听器通常涉及到`addEventListener`...
jQuery历史事件时间轴插件;jQuery历史事件时间轴插件jQuery历史事件时间轴插件jQuery历史事件时间轴插件jQuery历史事件时间轴插件jQuery历史事件时间轴插件jQuery历史事件时间轴插件
三、jQuery事件 1. 基本事件绑定:jQuery提供了`.on()`方法来绑定事件。例如,`$("#myButton").on("click", function() { ... })`表示当id为"myButton"的元素被点击时,执行匿名函数内的代码。 2. 鼠标事件:常见...
为了捕捉这一行为并根据需要做出响应,开发者通常会使用JavaScript或jQuery来监听滚轮事件。本篇将详细介绍如何使用jQuery和原生JavaScript实现鼠标滚轮事件的监听。 一、jQuery监听鼠标滚轮事件 jQuery库提供了一...
自定义事件在jQuery中可以通过`$.fn.extend`方法来实现。`$.fn.extend`允许我们向jQuery对象添加新的方法,这些方法可以用来触发或绑定自定义事件。下面是一个简单的例子: ```javascript $.fn.extend({ ...
在本压缩包中,我们有两个版本的jQuery核心库文件:`jquery-1.12.4.js` 和 `jquery-1.12.4.min.js`。前者是未压缩的源代码,适合开发调试使用,后者是经过压缩和优化的版本,适用于生产环境,体积更小,加载速度更快...
在这款日历插件中,jQuery扮演了核心的角色,为事件记录、日历展示等功能提供了便利的API和方法。 日历插件的事件记录功能是其核心亮点。用户可以方便地在任何日期上添加事件,无论是会议、约会还是简单的待办事项...
jquery hover事件鼠标悬停导航条浮动div层滑动高亮显示 jquery hover事件鼠标悬停导航条浮动div层滑动高亮显示 jquery hover事件鼠标悬停导航条浮动div层滑动高亮显示
该手册详细阐述了jQuery Mobile中的各种事件,帮助开发者更好地理解和利用这些事件来提升用户体验和交互性。 jQuery Mobile的事件可以分为两类:页面生命周期事件和用户交互事件。页面生命周期事件主要与页面加载、...
jQuery生态系统中有很多插件,它们扩展了jQuery的功能,比如表单验证插件jQuery Validate,轮播图插件jQuery Carousel,弹出框插件jQuery UI Dialog等。这些插件通常通过`$.fn.extend()`方法与jQuery集成。 **...
jquery中的事件
在给定的“jquery鼠标滚轮事件支持插件”中,我们关注的是如何利用jQuery扩展来处理鼠标的滚轮事件。这个插件允许开发者监听和响应用户滚动鼠标的滚轮,从而在网页上实现更加动态和交互的功能。 标题中的“jquery...
通过以上对jQuery事件处理和动画效果的讲解,相信你已经对这两个主题有了全面的理解。结合实际的HTML文档,不断练习和探索,你将能熟练运用jQuery,提升网页交互体验。在实践中,不断学习,持续进步,是成为优秀的...