目录:
一、事件机制
二、页面载入事件
2.1、ready()方法的工作原理
2.2、ready()方法的几种相同写法
三、绑定事件
四、切换事件
4.1、hover()方法
4.2、toggle()方法
五、移除事件
六、其他事件
6.1、方法one()
6.2、方法trigger()
七、表单应用
7.1、文本框中的事件应用
7.2、下拉列表框中的事件应用
八、列表应用
九、网页选项卡的应用
十、综合案例分析——删除数据时的提示效果在项目中的应用
一、事件机制
众所周知,页面在加载时,会触发Load事件。当用户单击某个按钮时,触发该按钮的Click事件,通过种种事件实现各种功能或执行某项操作。事件在元素对象与功能代码中起着重要的桥梁作用。那么,事件被出发后是如何执行代码的呢?
严格来说,事件在触发后被分为两个阶段,一个是捕获(Capture),另一个则是冒泡(Bubbling);但有些遗憾的是,大多数浏览器并不是都支持捕获阶段,jQuery也不支持。因此在事件触发后,往往执行冒泡过程。所谓的冒泡其实质就是事件执行中的顺序。
二、页面载入事件
2.1、ready()方法的工作原理
jQuery中的页面载入事件ready()方法,类似于传统JavaScript中的OnLoad()方法,只不过在事件执行时间上有区别:OnLoad()方法的执行必须是页面中的全部元素完全加载到浏览器后才触发,在这种情况下,如果页面中的图片过多或图片过大,那么有可能要等OnLoad()方法执行完毕,用户才能进行其他的操作;如果使用jQuery中的ready()方法加载页面,则只要页面中的DOM模型加载完毕,就会触发ready()方法。因此,两者在事件的执行效果上ready()方法明显优于JavaScript中的OnLoad()方法。
我们剖析一下jQuery()中的ready()方法的工作原理:在jQuery脚本加载到页面时,会设置一个isReady的标记,用于监听页面加载的进度,当然遇到执行ready()方法时,通过查看isReady值是否被设置,如果未被设置,那么就说明页面并未加载完成,在此情况下,将未完成的部分用一个数组缓存起来,当全部加载完成后,再将未完成的部分通过缓存一一执行。
2.2、ready()方法的几种相同写法
写法一:
写法二:
写法三:
写法四:
其中写法二简单明了,使用较为广泛。
三、绑定事件
我们可以使用如下的代码绑定按钮的单击事件:
除了上述绑定事件的写法外,在jQuery中,还可以使用bind()方法进行事件的绑定。下面对该方法进行详细的介绍。
bind()功能是为每个选择元素的事件绑定处理函数,其语法格式如下:
其中,参数type为一个或多个类型的字符串,如“click”或“change”,也可以自定义类型;可以被参数type调用的类型包括blur、focus、load、resize、unload、click、dbclick、mousedown、mouseup、mousemove、mouseover、mouseout、mouseenter、mouseleave、change、select、submit、keydown、keypress、keyup、error。
参数data是作为event.data属性值传递给事件对象的额外数据对象。
参数fn是绑定到每个选择元素的事件中的处理函数。
如果要在一个元素中绑定多个事件,可以将事件用空格隔开。
四、切换事件
在jQuery中,有两个方法用于事件的切换,一个是方法hover(),另一个是方法toggle()。所谓切换事件,即有两个以上的事件绑定于一个元素,在元素的行为动作间进行切换。如一个超链接标记<a>,若想实现当鼠标悬停时触发一个事件,鼠标移出时又触发另一个事件,就可以调用jQuery中的hover()方法轻松实现。
4.1、hover()方法
调用jQuery中的hover()方法可以使元素在鼠标悬停与鼠标移出的事件中进行切换,该方法在实际运用中,也可以通过jQuery中的事件mouseenter与mouseleave进行替换。
hover()功能是当鼠标移动到所选的元素上面时,执行指定的第一个函数;当鼠标移出这个元素时,执行指定的第二个函数,其语法格式如下:
参数over为鼠标移到元素时触发的函数,参数out为鼠标移出元素时触发的函数。
示例 用hover方法绑定事件
4.2、toggle()方法
在toggle()方法中,可以依次调用N个指定的函数,知道最后一个函数,然后重复对这些函数轮番调用。
toggle()方法的功能是每次单击后依次调用函数,“依次”说明该方法在调用函数时并未随机或指定调用,而是通过函数设置的前后顺序进行调用,其调用的语法格式如下:
其中参数fn, fn2, ..., fnN为单击时被依次调用的函数。
示例 用toggle方法绑定事件
五、移除事件
在DOM对象的实践操作中,既然存在用于绑定事件的bind方法,也相应存在用于移除绑定事件的方法,在jQuery中,可以通过unbind()方法移除绑定的所有事件或指定的某一个事件。
unbind()的功能是移除元素绑定的事件,其调用的语法格式如下:
其中,参数type为移除的事件类型,fn为需要移除的事件处理函数;如果该方法没有参数,则移除所有绑定的事件;如果带有参数type,则移除该灿说所指定的事件类型;如果带有参数fn,则只移除绑定时指定的函数fn。
示例 用unbind方法移除事件
六、其他事件
除上述介绍的几种事件方法外,在jQuery中还有很多的事件处理方法,下面介绍其中较为常用的两种处理事件的方法one()和trigger()。
6.1、方法one()
one()方法功能是为所选的元素绑定一个仅触发一次的处理函数,其调用的语法格式为:
其中,参数type为事件类型,即需要触发什么类型的事件;参数data为可选参数,表示作为event.data属性值传递给事件对象的额外数据对象;fn为绑定事件时所要触发的函数。
6.2、方法trigger()
在前端页面开发中,有时希望页面在DOM加载完毕后,自动执行一些很人性化的操作,如:文本框中的内容处理全部被选中状态,某个按钮处于焦点中。利用传统的JavaScript语言需要编写复杂的代码才可实现上述功能;而在jQuery中,仅需要调用一个trigger()方法就可以轻松实现。
trigger()方法的功能是在所选择的元素上触发指定类型的事件。其调用的语法格式为:
其中,参数type为触发事件的类型,参数data为可选项,表示在触发事件时,传递给函数的附加参数。
示例 用trigger方法绑定事件
页面效果如下:
说明:trigger()方法可以实现触发性事件,即不必用户做任何动作,自动执行该方法中的事件。在这种情形下,其最终效果可能会有异样产生。如果不希望页面自动执行,可使用triggerHandler()方法,使用方法与trigger()方法基本相同,只是该方法不会自动执行其包含的事件。
七、表单应用
7.1、文本框中的事件应用
文本框是表单中使用最为普遍的元素之一,因此,其前端用户页面的体验度显得十分重要。下面通过一个简单示例,介绍使用jQuery中的事件改变文本框的样式,以提高用户体验。
示例 文本框中的事件应用
示例效果如下:
7.2、下拉列表框中的事件应用
下拉列表框是最为常用的表单对象,该对象可以通过较小的页面空间,展示大量的数据;同时,多个列表框通过联动效果,展示数据的应用也相当广泛。下面通过一个示例,介绍如何在jQuery中,实现三个下拉列表框联动展示数据的功能。
示例 下拉列表框中的事件应用
页面效果如下:
八、列表应用
在页面开发中,经常使用<ul>,即列表标记。在设计展示数据或导航菜单的页面中,列表的使用相当广泛。下面通过一个简单的示例,介绍在jQuery中,如何使用列表<ul>标记实现导航菜单的功能。
示例效果如下所示:
九、网页选项卡的应用
在页面中,除使用列表<ul>标记实现滑动效果的菜单导航条外,还用于网页选项卡的设计。选项卡的功能十分简单,通过单击标题实现内容隐藏或显示的切换,由于它可以在有限的空间中展示大量的数据,因此,被广泛使用在各综合性的门户网站中。下面通过一个简单的示例,介绍网页选项卡快速实现的方法。
示例 网页选项卡的应用
页面效果如下所示:
十、综合案例分析——删除数据时的提示效果在项目中的应用
经分析,该案例的需求如下:
- 当用户单击“删除”按钮时,整个页面背景类似于关机效果,“删除”提示框突出显示,用户可以选“关闭”按钮,或单击“确定”或“取消”的操作。
- 删除提示框一直居中显示,不论页面大小发生如何变化,这个提示框始终居中显示。
- 如果对某条记录打勾,当用户单击提示框中的“确定”按钮时,将在页面中删除该条记录,同时关闭提示框,页面背景恢复正常。
页面效果如下所示:
这里要注意CSS的编写,尤其是各浏览器的兼容。
分享到:
相关推荐
《jQuery权威指南》学习笔记之第4章 jQuery中的事件与应用
基于jQuery中的Ajax应用初步基于jQuery中的Ajax应用初步
jQuery简单应用实例
第二篇是jQuery Mobile基础篇,介绍了jQuery Mobile中对话框、工具栏、按钮、表单、布局和插件的使用;第三篇是跨平台APP实战篇,介绍了6个使用jQuery Mobile开发的实际APP;第四篇是发布和推广应用篇,介绍了在开发...
jquery应用实例 jquery应用实例 jquery应用实例
jQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用Ⅱ
JQuery的一些基本应用,包括自定义行查询,隐藏/显示一行/一列,切换大小图片等
书中不仅详细讲解了jQuery的各种组件的功能特性和jQuery应用开发的流程与方法,而且还讲解了jQuery UI和jQuery Mobile等扩展及插件的用法,可以帮助读者迅速掌握jQuery的用法并具备实战能力。 书中精选了jQuery的...
《HTML5+CSS3+jQuery应用之美》案例完整,跟学书中实例后,相信会使读者的网页设计与制作水平均有实质提升。, 《HTML5+CSS3+jQuery应用之美》适合Web设计人员和前端开发人员阅读,也适合作为相关培训用途的参考用书...
Aspnet 中Jquery应用经典例子
《JQUERY应用开发实践指南》示例代码,希望对需要的同学有用。
jQuery的表单简单应用 让你清晰易懂,还有不少习题,帮你巩固基础,加深理解。
随着WEB2.0及ajax思想在互联网上的快速发展传播,陆续出现了一些优秀的Js框架,其中比较著名的有Prototype、YUI、 jQuery、mootools、Bindows以及国内的JSVM框架等,通过将这些JS框架应用到我们的项目中能够使程序员...
jQuery适合于设计师、开发者以及那些还好者,同样适合用于商业开发,可以说jQuery适合任何JavaScript应用的地方,可用于不用的应用程序。 jQuery是一个轻量级的脚本,其代码非常小巧,JavaScript包只有15K左右。 ...
在此基础上,本文对SSH框架和jQuery技术在Java-Web开发中的应用进行了探讨。同时,本文结合时代技术发展的特点,对基于SSH框架的Java-Web数据库配置设计方法进行了研究,并对基于jQuery技术的Java-Web功能优化设计方法...
jQuery中blur和focus事件的应用,相关事例和代码
主要介绍了jQuery实现长按按钮触发事件的方法,可应用于手机端应用程序的开发中,非常具有实用价值,需要的朋友可以参考下
jquery很全的例子源码,事件 ajax,表单应用
资源名称:J2EE中JSON Jquery_AJAX应用 中文PDF版内容简介:本文档主要讲述的是J2EE中JSON Jquery_AJAX应用;主要是描述使用JSON JQuery_AJAX实现页面动态加载与页面表单数据的异步保存。首先页面通过调用JQuery_...