初学jQuery参考

本人初学jQuery,查阅资料过程中偶然发现这一篇文章,觉得对于初学者来说就像拨云见日般的清晰,故转来以备日后参考,也同样将原文分享给大家。原文地址:http://blog.csdn.net/zhoufoxcn/archive/2009/06/23/4290575.aspx

 

自从jQuery面世以来,它以其快速、简洁,能够很轻易地处理HTML文档、控制事件、给页面添加动画和Ajax效果等打动着所有关注它的人的 心。
 在 VS2008中也可以很方便地使用jQuery,不过需要安装SP补丁,这个补丁可以从微软官方网站下载,也可以在搜索引擎中以 “VS2008SP1CHSX1512981.iso”为关键字来搜索这个补丁,这个补丁体积比较庞大,本人下载到的文件大小为898 MB (941,703,168 字节),并且在安装这个补丁时请确认系统分区必须有大于3.4G的硬盘空间。下载到VS2008SP1CHSX1512981.iso文件之后用虚拟光驱 加载之后就可以安装,一路next没有太多话说。
 要在VS2008SP1中使用VS2008SP1中使用jQuery有以下注意事项:
 1、需要有jQuery的类库,在本示例中使用的是1.2.6,本人所知的最新版本为1.3.1。
 2、 需要有jQuery的API文档,这个文档其实也是一个js文件,在VS2008SP1中配置以后,编码时VS2008会自动从这个文档中读取方法说明, 这样编写js方法时就会像编写C#中的方法一样具有智能感知和智能提示的作用(在本示例中使用1.2.6版本的原因是本人手头有1.2.6版本的API文 档的中文版,这对于Englishi不好的朋友来说比较方便,呵呵)。
 3、在使用时确保jQuery类库和jQuery的API文档库在同一个 目录下,并且API文档库的名称和jQuery类库名称有一定要求,比如jQuery类库文件名为“jquery-1.2.6-cn.js”,那么 jQuery的API文档库的名称应为“jquery-1.2.6-cn-vsdoc.js”,因为当jQuery类库被引用时会检查在该类库所在的文件 夹下是否存在一个可选的“-vsdoc.js”文件,如果存在就会驱动智能感知引擎。
 下面看一个例子,在这个例子里演示了三种效果,发送Ajax请求、隐藏和显示HTML元素。
这个页面的代码设计部分代码如下:

  1.      < %@ Page  Language = "C#"   AutoEventWireup = "true"    CodeFile = "Default.aspx.cs"   Inherits = "_Default"  % >   
  2.       
  3.     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4.       
  5.     < html   xmlns = "http://www.w3.org/1999/xhtml" >   
  6.     < head   runat = "server" >   
  7.         < title > </ title >   
  8.         < script   src = "js/jquery-1.2.6-cn.js"    type = "text/javascript" > </ script >   
  9.         < script   src = "js/jquery-1.2.6-cn-vsdoc.js"   type = "text/javascript" > </ script >   
  10.         < script   type = "text/javascript"   language = "javascript" > <!--  
  11.             function getTime() {  
  12.                 $.get("GetTime.aspx", { format: "yyyy-mm-dd" },  
  13.                 function(data) {//得到Ajax响应后的回调函数  
  14.                     $("#time").html("< font   color = 'red' > " + data + " </ font > ");  
  15.                 });  
  16.             }  
  17.           
  18. // --> </ script >   
  19.     </ head >   
  20.     < body >   
  21.         < form   id = "form1"   runat = "server" >   
  22.         < div >   
  23.         < input   type = "button"   value = "获取服务器时间"   onclick = "javascript:getTime()"   />   
  24.         < div   id = "time" > </ div >   
  25.         < input   id = "btnHidden"   type = "button"   value = "隐藏文本"   />   
  26.         < input   id = "btnShow"   type = "button"   value = "显示文本"   />   
  27.         < div   id = "myMessage"   style = "background-color:Red; color: #000080;"   mce_style = "background-color:Red; color: #000080;" > 这里是文本 </ div >   
  28.         </ div >   
  29.         < script   type = "text/javascript"   language = "javascript" > <!--  
  30.             //给id为btnHidden的按钮的click绑定一个函数,这个函数的作用是将id为myMessage的元素隐藏  
  31.             $("#btnHidden").bind("click", function(event) { $("#myMessage").hide(500); });  
  32.             //给id为btnShow的按钮的click绑定一个函数,这个函数的作用是将id为myMessage的元素显示  
  33.             $("#btnShow").bind("click", function(event) { $("#myMessage").show(500); });  
  34.           
  35. // --> </ script >   
  36.         </ form >   
  37.     </ body >   
  38.     </ html >   

说明:在这个页面里引入了jQuery类库和jQuery的API文档库,为了启用VS2008SP1的智能感知效果,可能需要更新一下 Visual Studio的智能感知,步骤如下:“编辑”-“IntelliSence”-“更新JScriptIntelliSence”,如下图所示:

启用VS智能提示功能

因为在这个页面中有一处地方存在这Ajax请求,所以还需要编写一个页面接收客户端的Ajax请求,这个页面的名称是GetTime.aspx,注意请删除掉该页面设计代码中的页面元素部分,仅保留如下代码:

  1. < %@ Page  Language = "C#"   AutoEventWireup = "true"   CodeFile = "GetTime.aspx.cs"   Inherits = "GetTime"  % >   

如果不删除页面的HTML元素,有可能会影响最终的显示效果。
GetTime.aspx页面的服务器端逻辑代码如下:

  1. using  System;  
  2. using  System.Collections.Generic;  
  3. using  System.Web;  
  4. using  System.Web.UI;  
  5. using  System.Web.UI.WebControls;  
  6.   
  7. public  partial  class  GetTime : System.Web.UI.Page  
  8. {  
  9.     protected   void  Page_Load( object  sender, EventArgs e)  
  10.     {  
  11.         //设置服务器上不缓存结果,保证每次都能获取到服务器上当前时间   
  12.         Response.Cache.SetCacheability(HttpCacheability.NoCache);  
  13.         //获取客服端请求的时间的格式   
  14.         string  format = Request[ "format" ];  
  15.         string  dateFormat =  string .Empty;  
  16.         if  (! string .IsNullOrEmpty(format))  
  17.         {  
  18.             format = format.ToLower();  
  19.             switch  (format)  
  20.             {  
  21.                 case   "yyyy-mm-dd" : dateFormat =  "yyyy-MM-dd"break ;  
  22.                 case   "yyyy-mm-dd hh:mm:ss" : dateFormat =  "yyyy-MM-dd HH:mm:ss"break ;  
  23.                 case   "mm-dd" : dateFormat =  "MM-dd"break ;  
  24.                 case   "hh:mm:ss" : dateFormat =  "HH:mm:ss"break ;  
  25.                 default : dateFormat =  "yyyy-MM-dd HH:mm:ss"break ;  
  26.             }  
  27.         }  
  28.         else   
  29.         {  
  30.             dateFormat = "yyyy-MM-dd HH:mm:ss" ;  
  31.         }  
  32.         Response.Write(DateTime.Now.ToString(dateFormat));  
  33.     }  
  34. }  

 最终这个页面的初始运行效果如下:
 
 点击“获取服务器时间”按钮后的效果如下:
 
 点击“隐藏文本”按钮后的效果如下:
 
 如果点击“显示文本”按钮之后,效果如下:
 
 如果实地运行这个例子,你就会发现文本的隐藏和显示会有一个动画效果,这个从VS的js智能感知提示中可以看到,如下图:
 
 从上图可以看到show方法有两个可选参数,第一个是动画时长的参数,可以用毫秒值来设定,这个值如果比较大的话会看到比较明显的动画效果。
 通过jQuery可以减少很多脚本代码在浏览器兼容性方面的考虑,对于喜欢用纯js来开发Ajax应用程序或者操作HTML元素的开发人员来说,确实是一大福音。当然本文仅仅是演示了简单的应用,更多更好更灵活的应用有待于你我在开发中去发现。
 本文所涉及到的源代码除了不提供VS2008SP1CHSX1512981.iso这个VS2008的补丁之外,其它在本文涉及到的文件均提供下载,在本文源代码的项目中js文件下包含有三个文件:
 jquery-1.2.6-cn.js:jQuery类库。
 jquery-1.2.6-cn-vsdoc.js:jQuery中文API文档,这个用于在VS下提供智能提示。
 jQueryAPI_CHM.CHM:jQuery中文API帮助。
 
 本文源代码下载地址:http://download.csdn.net/source/1429247

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值