有了jQuery, 我们有了处理对象事件的一系列函数. 上面基础知识还是要懂, 但是再也不用自己去实现处理多播事件委托的函数了. 正所谓有了jQuery, 天天喝茶水. 下面是在jQuery中最常使用的bind()方法举例:
$("#testDiv4").bind("click", showMsg); 我们为id是testDiv4的元素, 添加列click事件的事件处理函数showMsg.
使用jQuery事件处理函数的好处:
1. 添加的是多播事件委托. 也就是为click事件又添加了一个方法, 不会覆盖对象的click事件原有的事件处理函数.
$("#testDiv4").bind("click", function(event) { alert("one"); });
$("#testDiv4").bind("click", function(event) { alert("two"); });
单击testDiv4对象时, 依次提示"one"和"two".
bind( type, [data], fn )
为每一个匹配元素的特定事件(像click)绑定一个事件处理器函数。
当每个段落被点击的时候,弹出其文本:
$("p").bind("click", function(){
alert( $(this).text() );
});
bind()是最常使用的函数, 注意方法签名上data参数, 可以在事件处理之前传递一些附加的数据:
function handler(event) {
alert(event.data.foo);
}
$("p").bind("click", {foo: "bar"}, handler)
注意event参数的使用. jQuery中统一了事件对象, 将事件对象作为事件处理函数的唯一参数传递.
data参数我们也要通过event.data 进行访问. 为何要提供data参数呢?
因为我们经常碰到这样的问题: 希望在事件处理中根据事件源的某些数据进行特殊处理.
<div id="testDiv5" customer="customer data 1">获取自定义数据-1</div>
在事件处理函数中获取数据:
$("#testDiv5").bind("click", function(event) { alert($(event.target).attr("customer")); });
attr函数是上一讲中的知识, 用于获取元素的"元素属性", 而且可以获取自定义的元素属性. 单击div后将显示:
js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;
jQuery提供了对常用事件的封装. 比如单击事件对应的两个方法click()和click(fn)分别用来触发单击事件和设置单击事件.
设置单击事件:
$("#testDiv").click(function(event) { alert("test div clicked ! "); });
等效于: $("#testDiv").bind("click", function(event) { alert("test div clicked ! "); });
触发单击事件:
$("#testDiv").click();
等效于$("#testDiv").trigger("click");
注意这里等效的是trigger而不是triggerHandler.
此类方法在jQuery中英文叫做Event Helpers, 我找不到很好的翻译方式, 所以按照功能称其为"快捷方法", 征集好的翻译名称!
jQuery中统一了事件对象, 当绑定事件处理函数时, 会将jQuery格式化后的事件对象作为唯一参数传入:
$("#testDiv").bind("click", function(event) { });
关于event对象的详细说明, 可以参考jQuery官方文档: http://docs.jquery.com/Events/jQuery.Event
相关推荐
本篇学习笔记将详细介绍如何使用jqGrid实现分页和搜索功能。 首先,要使用jqGrid,你需要在HTML页面中引入必要的CSS和JavaScript文件。这些文件包括jqGrid的样式表`ui.jqgrid.css`,jQuery库`jquery-2.0.3.min.js`...
《jQuery学习笔记源码——初识与实践》 在当今的Web开发领域,jQuery是一个不可或缺的JavaScript库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互等任务。本篇文章将基于“jQuery学习笔记源码 1第一个...
**jQuery学习笔记--1** jQuery是一个轻量级的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画设计以及Ajax交互。本篇笔记将深入探讨jQuery的基础知识,包括其核心概念、选择器、DOM操作、事件...
**jQuery学习笔记——属性大全** 在JavaScript的世界里,jQuery是一个非常流行且强大的库,它极大地简化了DOM操作、事件处理、动画制作以及Ajax交互。本笔记将深入探讨jQuery中的核心属性,帮助开发者快速掌握和...
jQuery.flipster是一款优秀的jQuery插件,专为创建立体式的轮播Banner或旋转木马效果而设计。这款插件以其简洁的API和出色的用户体验受到了许多开发者的喜爱。在本压缩包中,你将找到所有必要的资源来快速搭建一个...
jq语法
《jQuery学习笔记——15天快速入门指南》 jQuery,作为一个强大的JavaScript库,极大地简化了JavaScript的DOM操作、事件处理、动画制作以及Ajax交互。它以其简洁的API和高效的性能,成为了前端开发者的首选工具之一...
**jQuery学习笔记——2009年jQuery年度插件之Galleria** Galleria是一款功能强大的JavaScript图像画廊插件,它在2009年因其出色的设计和丰富的功能而备受关注。这款插件充分利用了jQuery库的强大性能,使得在网页上...
在JavaScript的世界里,jQuery是一个非常流行和强大的库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互。本文将深入探讨jQuery的选择器、样式操作和效果,帮助你更好地理解和应用jQuery。 ### 1. jQuery...
《JQuery 学习笔记01 - JQuery初接触》 jQuery是一个高效、简洁且功能丰富的JavaScript库,它极大地简化了JavaScript编程,使得开发者能够更快速、更方便地处理DOM操作、事件处理、动画效果和Ajax交互。这篇学习...
总结,jQuery操作DOM的主要知识点包括:选择器的使用、元素的遍历、插入与删除、属性和内容的修改、事件处理以及动画和Ajax交互。熟练掌握这些技能,可以极大地提高开发效率,使得网页交互变得更加生动和流畅。通过...
标题《jQuery学习笔记之基础中的基础》表明本文是关于jQuery的入门指导,针对的是刚开始接触jQuery的初学者,旨在传授jQuery的核心概念和基础用法。内容围绕jQuery的核心功能和优势展开,通过实例操作和对比,介绍...
JavaSE6学习笔记是针对Java初学者和进阶者的一份宝贵资料,由知名讲师李兴华的培训课堂笔记汇编而成。这份笔记全面、详细地涵盖了Java SE 6版本的核心概念和技术,对于理解Java编程语言的基础以及进阶特性具有重要...
《jQuery笔记1——深入理解与应用》 在Web开发领域,jQuery是一款广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。这篇笔记将带领我们深入理解jQuery的核心概念,同时通过实例...
《jQuery 动画详解——基于“笨人的学习笔记”》 在Web开发中,动态效果是提升用户体验的重要手段,jQuery库以其简洁易用的API,让JavaScript动画变得简单且高效。本篇主要针对jQuery的动画功能进行深入探讨,结合...
《jQuery入门详解——从入口函数到选择器》 jQuery,作为一款广泛应用于前端开发的JavaScript库,极大地简化了DOM操作,提供了丰富的API和强大的选择器系统。本文将深入讲解jQuery的核心概念,包括入口函数的使用、...
事件处理程序通常用`addEventListener`和`removeEventListener`添加和移除。 2. DOM操作:文档对象模型(DOM)是HTML和XML文档的结构化表示。JavaScript通过DOM API可以查找、修改、添加或删除HTML元素,实现动态...
ExtJS4学习笔记(七)---带搜索的Grid(SearchGrid) ExtJS4学习笔记(三)---VBox的使用 ExtJS4学习笔记(九)---ExtJS4 EditGrid(可编辑的Grid) ExtJS4学习笔记(二)---HBox的使用 ExtJS4学习笔记(五)---Grid分页 ExtJS4...
- **jQuery**: 是一款基于JavaScript编写的开源库,简化了HTML文档遍历、事件处理、动画以及Ajax交互等功能,让开发者能够更轻松地编写动态网页。 #### 2. JavaScript的核心特点 - **解释型语言**: JavaScript是一...