jQuery学习大总结(四)jQuery事件

开发 前端
前三篇总结了jQuery的一些基础,有jQuery对象的介绍、jQuery操作css样式和jQuery操作元素。今天总结一下jQuery事件,这是比较重要的一块,希望本次总结能帮助到很多同我一样的新手。

前三篇总结了jQuery的一些基础,有jQuery对象的介绍、jQuery操作css样式和jQuery操作元素。今天总结一下jQuery事件,这是比较重要的一块,希望本次总结能帮助到很多同我一样的新手。

首先,我们来看一个有用的实例,来加深以前所掌握的知识,其中有些是在前边出现过的。

  1. <img id="imgGoogle" src="http://www.google.com.hk/intl/zh-CN/images/logo_cn.png" alt="google.com" /> 
  2. <input type="button" id="btnHide" value="隐藏图片" />
  1. jQuery(document).ready(function() { 
  2.     jQuery("#btnHide").click(function() { 
  3.         jQuery("#imgGoogle").hide("1000"); 
  4.     }); 
  5. }); 

当点击隐藏图片时,google的logo图片将在一秒钟进行隐藏。这里我们用到了hide()方法,当然也可不指定时间,如果要显示图片的话应该使用show()方法,感觉是不是很棒。

现在开始本篇的主要内容:事件。大家可能已经注意到了,上边已经在多处用到了事件。其中,document.ready就是一个事件,当文档准备好了,它告诉jQuery可以执行事件了,鼠标移动、点击、文本框焦点离开等都是事件。

在过去,我们经常看到:

  1. <div onclick="alert('租房贵');" id="divRent">在北京</div> 

这种写法。从现在开始,大家应该抛弃这种写法。实现js代码和html的分离,这样页面整洁了,效率也会更高。现在的写法,将会变成:

  1. jQuery("#divRent").click(function() { 
  2.     alert("租房贵"); 
  3. }); 

既然是总结,我还是像前三篇那样,用实例来记录尽可能多的事件方法,方便大家在需要的时候查阅。

以下是自己在学习过程中遇到的:

1、one()事件,绑定要执行一次的事件

  1. <div id="divRent">人在北京</div>
  1. jQuery("#divRent").one("click", function() { 
  2.     alert("租房贵"); 
  3. }); 

以上绑定一次单击事件,第二次点击时,不会再弹出提示。

2、focus()和blur()事件

  1. <input id="tTest" type="text" />
  1. jQuery("#tTest").focus(function() {  
  2.     jQuery(this).css("background", "yellow");  
  3. }).blur(function() {  
  4.     jQuery(this).css("background", "white");  
  5. }); 

此例实用到了链式写法,相信不难理解。如果对jQuery操作css样式不熟悉,可以看看第二篇总结。此例当焦点聚焦在本文框时,背景色变为黄色,离开时又变回白色。这样做的目的,可以提高用户体验,我个人感觉。

3、keydown()和keyup()事件

  1. <input type="text" id="tTest" />  
  2. <label id="lResult"></label>
  1. jQuery("#tTest").keyup(function() {  
  2.     jQuery("#lResult").html(jQuery(this).val());  
  3. });  

当键弹起时(这里感觉不好表达^_^),在label中将会显示文本框中的内容。操作元素属性部分可以看看第三篇总结。

4、submit()事件

  1. <form id="form2" runat="server"> 
  2.     <input id="text" type="text" />  
  3.     <asp:button id="btnTest" onclick="btnTest_Click" runat="server" text="测试">  
  4.     </asp:button>  
  5. </form>
  1. jQuery("#form1").submit(function() {  
  2.     if (jQuery.trim(jQuery("#text").val()).length == 0) {  
  3.         return false;  
  4.     }  
  5. }); 

可以看出,本实例使用了服务器控件。实质上是一样的,最终会进行表单提交。点击按钮时,进行表单提交。如果文本框内容为空时,返回false,从而不进行提交;否则,进行提交。此类应用在web开发中随处可见。

5、hover()事件

  1. <div id="divHover">hover me</div>
  1. jQuery("#divHover").hover(function() {  
  2.     jQuery(this).css("background", "yellow");  
  3. }, function() {  
  4.     jQuery(this).css("background", "red");  
  5. }); 

鼠标移动到div上时,div背景色变成黄色,移出背景色变成红色。

以上几种事件是比较常见的,也是用的比较多的。当然本篇总结的只是一小部分,学习中遇到问题还得用jQuery文档进行查阅。

原文链接:http://www.jquery001.com/jquery-event.html

责任编辑:陈四芳 来源: jquery001.com
相关推荐

2013-12-02 14:40:03

jQueryAjax

2013-12-02 14:29:27

jQuery元素属性

2013-12-02 14:22:14

jQuery选择器

2013-12-02 14:18:33

jQuery对象

2010-07-19 10:05:07

jQuery

2013-12-02 15:21:30

jQuery插件

2011-07-19 17:09:44

jQuery Mobi事件

2012-04-26 13:12:09

jQuery代码优化

2011-10-31 13:31:03

jQuery

2011-05-05 11:03:34

jQueryjavascript

2011-06-07 14:15:01

jQuery

2011-09-05 16:43:00

jQuery Mobi

2010-05-24 13:04:53

jQueryJavaScript

2014-11-10 09:59:08

jQuery

2009-07-17 17:33:22

jQuery

2012-05-22 09:52:03

jQuery

2011-09-01 14:14:00

jQuery Mobi

2011-09-02 10:59:10

jQuery Mobi

2012-03-08 11:23:09

jQuery Mobi

2011-09-01 10:27:42

jQuery Mobi
点赞
收藏

51CTO技术栈公众号