精品一二三四在线_国产激情精品久久久第一区二区_av欧美精品.com_欧美xxxxxxxx_国模无码大尺度一区二区三区_欧美成人精品3d动漫h_亚洲成人av一区_韩国v欧美v亚洲v日本v_欧美色视频在线_在线91免费看_成人a区在线观看_麻豆91精品视频_亚洲h动漫在线_成人app软件下载大全免费_日本午夜一本久久久综合_亚洲欧美在线视频

從零開始學習jQuery (一) 開天辟地入門篇

2013-4-8    藍藍設計的小編

轉載藍藍設計(   www.index123.cn  )是一家專注而深入的設計機構 ,為期望卓越的國內外企業(yè)提供有效的   BS界面設計 、 cs界面設計 、  ipad界面設計   、  包裝設計 、  圖標定制 、  用戶體驗 、交互設計、   網(wǎng)站建設 平面設計服務

來源:http://www.cnblogs.com/zhangziqiu/ 

如果您想訂閱本博客內容,每天自動發(fā)到您的郵箱中,   請點這里

一.摘要

本系列文章將帶您進入jQuery的精彩世界, 其中有很多作者具體的使用經(jīng)驗和解決方案,  即使你會使用jQuery也能在閱讀中發(fā)現(xiàn)些許秘籍.

本篇文章是入門第一篇, 主要是簡單介紹jQuery, 通過簡單示例指導大家如何編寫jQuery代碼以及搭建開發(fā)環(huán)境. 詳細講解了如何在Visual Studio中配合使用jQuery.

轉載請注明子秋出品!博客園首發(fā)!

 

二.前言

首先道個歉! "從零開始學習ASP.NET MVC"系列文章在即將介紹Filter時就沒有更新了, 原因就是最近我一直在研究和學習jQuery.看到本系列的名稱和文章標題, 看過我的MVC系列文章的人會感到很熟悉. 不久要給公司的人做培訓, 所以特意制作了本教程.

在寫作的同時我參考了網(wǎng)上jQuery的系列教程文章, 在博客園和Google上并沒有找到讓我滿意的系列教程. 我喜歡將知識系統(tǒng)的,深入淺出的講解.不喜歡寫那種"學習筆記"式的文章. 同時本系列將很快全部寫完(有工作壓力就是有動力), 隨后如果時間允許我會繼續(xù)更新MVC系列文章.再一次對等待MVC文章的朋友們說聲抱歉!

另外本系列文章的大部分知識點來源于圖靈出版社的"jQuery實戰(zhàn)"一書. 推薦大家購買此書, 是jQuery書籍中的經(jīng)典之作.

下面讓我們開始jQuery之旅.

 

三.什么是jQuery

jQuery是一套Javascript腳本庫.  在我的博客中可以找到"Javascript輕量級腳本庫"系列文章. Javascript腳本庫類似于.NET的類庫, 我們將一些工具方法或對象方法封裝在類庫中, 方便用戶使用.

注意jQuery是腳本庫, 而不是腳本框架. "庫"不等于"框架", 比如"System程序集"是類庫,而"ASP.NET MVC"是框架. jQuery并不能幫助我們解決腳本的引用管理和功能管理,這些都是腳本框架要做的事.

腳本庫能夠幫助我們完成編碼邏輯,實現(xiàn)業(yè)務功能. 使用jQuery將極大的提高編寫javascript代碼的效率, 讓寫出來的代碼更加優(yōu)雅, 更加健壯. 同時網(wǎng)絡上豐富的jQuery插件也讓我們的工作變成了"有了jQuery,天天喝茶水"--因為我們已經(jīng)站在巨人的肩膀上了.

創(chuàng)建一個ASP.NET MVC項目時, 會發(fā)現(xiàn)已經(jīng)自動引入了jQuery類庫. jQuery幾乎是微軟的御用腳本庫了!完美的集成度和智能感知的支持,讓.NET和jQuery天衣無縫結合在一起!所以用.NET就要選用jQuery而非Dojo,ExtJS等.

jQuery有如下特點:

1.提供了強大的功能函數(shù)

使用這些功能函數(shù), 能夠幫助我們快速完成各種功能, 而且會讓我們的代碼異常簡潔.

2.解決瀏覽器兼容性問題

javascript腳本在不同瀏覽器的兼容性一直是Web開發(fā)人員的噩夢,  常常一個頁面在IE7,Firefox下運行正常, 在IE6下就出現(xiàn)莫名其妙的問題. 針對不同的瀏覽器編寫不同的腳本是一件痛苦的事情. 有了jQuery我們將從這個噩夢中醒來, 比如在jQuery中的Event事件對象已經(jīng)被格式化成所有瀏覽器通用的, 從前要根據(jù)event獲取事件觸發(fā)者, 在ie下是event.srcElements 而ff等標準瀏覽器下下是event.target. jQuery則通過統(tǒng)一event對象,讓我們可以在所有瀏覽器中使用event.target獲取事件對象.

3.實現(xiàn)豐富的UI

jQuery可以實現(xiàn)比如漸變彈出, 圖層移動等動畫效果, 讓我們獲得更好的用戶體驗. 單以漸變效果為例, 從前我自己寫了一個可以兼容ie和ff的漸變動畫, 使用大量javascript代碼實現(xiàn), 費心費力不說, 寫完后沒有太多幫助過一段時間就忘記了. 再開發(fā)類似的功能還要再次費心費力. 如今使用jQuery就可以幫助我們快速完成此類應用.

4.糾正錯誤的腳本知識

這一條是我提出的, 原因就是大部分開發(fā)人員對于javascript存在錯誤的認識. 比如在頁面中編寫加載時即執(zhí)行的操作DOM的語句, 在HTML元素或者document對象上直接添加"onclick"屬性,  不知道onclick其實是一個匿名函數(shù)等等.  擁有這些錯誤腳本知識的技術人員也能完成所有的開發(fā)工作, 但是這樣的程序是不健壯的. 比如"在頁面中編寫加載時即執(zhí)行的操作DOM的語句", 當頁面代碼很小用戶加載很快時沒有問題, 當頁面加載稍慢時就會出現(xiàn)瀏覽器"終止操作"的錯誤.jQuery提供了很多簡便的方法幫助我們解決這些問題, 一旦使用jQuery你就將糾正這些錯誤的知識--因為我們都是用標準的正確的jQuery腳本編寫方法!

5.太多了! 等待我們一一去發(fā)現(xiàn).

 

四.Hello World jQuery

按照慣例, 我們來編寫jQuery的Hello World程序, 來邁出使用jQuery的第一步.

在本文最后可以下本章的完整源代碼.

1.下載jQuery類庫

jQuery的項目下載放在了Google Code上, 下載地址:

http://code.google.com/p/jqueryjs/downloads/list

上面的地址是總下載列表, 里面有很多版本和類型的jQuery庫, 主要分為如下幾類:

min: 壓縮后的jQuery類庫,  在正式環(huán)境上使用.如:jquery-1.3.2.min.js

vsdoc: 在Visual Studio中需要引入此版本的jquery類庫才能啟用智能感知.如:jquery-1.3.2-vsdoc2.js

release包: 里面有沒有壓縮的jquery代碼, 以及文檔和示例程序. 如:jquery-1.3.2-release.zip

2.編寫程序

創(chuàng)建一個HTML頁面, 引入jQuery類庫并且編寫如下代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Hello World jQuery!</title>
    <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>
</head>
<body>
    <div id="divMsg">Hello World!</div>
    <input id="btnShow" type="button" value="顯示" />
    <input id="btnHide" type="button" value="隱藏" /><br />
    <input id="btnChange" type="button" value="修改內容為 Hello World, too!" />
    <script type="text/javascript" >
        $("#btnShow").bind("click", function(event) { $("#divMsg").show(); });
        $("#btnHide").bind("click", function(event) { $("#divMsg").hide(); });
        $("#btnChange").bind("click", function(event) { $("#divMsg").html("Hello World, too!"); });      
    </script>
</body>
</html>

效果如下:

image

頁面上有三個按鈕, 分別用來控制Hello World的顯示,隱藏和修改其內容.

此示例使用了:

(1) jQuery的Id選擇器: $("#btnShow")

(2) 事件綁定函數(shù) bind()

(3) 顯示和隱藏函數(shù). show()和hide()

(4) 修改元素內部html的函數(shù)html()

在接下來的教程中我們將深入這些內容的學習.

 

五.啟用Visual Studio 對jQuery的智能感知

首先看一下Visual Studio帶給我們的智能感知驚喜. 要讓Visual Studio支持智能感知, 需要下列條件:

  • 安裝 VS2008 SP1 
    下載地址: http://msdn.microsoft.com/en-us/vstudio/cc533448.aspx 
  • 安裝VS 2008 Patch KB958502以支持"-vsdoc.js"Intellisense文件. 
    該補丁會導致Visual Studio在一個JavaScript庫被引用時,查找是否存在一個可選的"-vsdoc.js"文件,如果存在的話,就用它來驅動JavaScript intellisense引擎。這些加了注釋的"-vsdoc.js"文件可以包含對JavaScript方法提供了幫助文檔的XML注釋,以及對無法自動推斷出的動態(tài)JavaScript簽名的另外的代碼intellisense提示。你可以在"這里"了解該補丁的詳情。你可以在"這里"免費下載該補丁。 
  • 必須要引用vsdoc版本的jquery庫 
    <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>


在編寫腳本的時候, 甚至剛剛輸入"$"的時候,VS可以智能提示:

image

在使用方法時, 還會有更多的提示:

image

 

有了智能感知我們編寫javascript變得和C#一樣快速,便捷,舒服.大部分情況可以一次編寫成功而不用再為了一個大小寫而查詢javascript幫助文件.能夠讓Visual Studio對jQuery實現(xiàn)智能感知的前提是要引入vsdoc版本的jQuery類庫. 示例中我們引入了"jquery-1.3.2-vsdoc2.js"文件. 如果引用其他版本比如min版本的jQuery類庫就無法啟用智能提示.但是在正式環(huán)境下, 我們必須要使用"min"版本的jquery庫文件, 以1.3.2版本號為例,各個版本的大小如下:

image

其中第一個是未壓縮的jquery庫. 如果啟用gzip壓縮并且使用min版本的jquery.js可以在傳輸過程中壓縮到19KB.

注意,如果我們更新了腳本, 可以通過"Ctrl+Shift+J"快捷方式更新Visual Studio的智能感知,或者單擊 編輯->IntelliSense->更新JScript Intellisense:

image

為了即能在Visual Studio中增加腳本提示, 又能在上線的時候使用min版本的腳本庫, 我們一般是用如下方式引入jQuery庫:

1. 控制編譯結果

    <script type="text/javascript" src="scripts/jquery-1.2.6.min.js"></script>     <%if (false)
      { %>
    <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>    
    <%} %>

這是網(wǎng)上推薦的方式. 編譯后的頁面上只有min版本的引用, 同時在開發(fā)時能夠享受到智能感知.但是注意這種方式引用的min類庫只能是1.2.6或者之前的版本號. 的1.3.2的所有非vsdoc版本的jquery庫引用后都會導致JScript Intellisense更新出錯. 這是1.3.2版本的一個bug, 期待后續(xù)版本中解決. 其實大家完全可以使用1.2.6版本的min庫, 本教程涉及的jquery功能, 1.2.6版本基本都支持.

我們使用了if(false)讓編譯后的頁面不包含vsdoc版本jquery庫的引用, 同樣的思路還可以使用比如將腳本引用放入一個PlaceHolder并設置visible=fasle等.

2. 使用后端變量

為了能使用 1.3.2 版本的min庫, 我們只能通過將腳本引用放在變量里, 通過頁面輸出的方式, 此種方式可以正常更新JScript Intellisense.但是可能有人和我一樣不喜歡在前端使用變量:

    <asp:PlaceHolder Visible="false" runat="server">         <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>     </asp:PlaceHolder>     <% =jQueryScriptBlock %>


后臺聲明變量:

protected string jQueryScriptBlock = @"<script type=""text/javascript"" src=""scripts/jquery-1.3.2.min.js""></script>";
 

 

 

六.在獨立的.JS文件中啟用腳本智能感知

上面我們解決了在頁面中智能感知的問題, 其實在獨立的.js文件中我們同樣可以啟用腳本的智能感知, 在IntellisenseDemo.js文件中,添加如下語句:

/// <reference path="jquery-1.3.2-vsdoc2.js" />
 

更新JScript Intellisense, 會發(fā)現(xiàn)在腳本中也啟用了智能提示:

image

注意,本文中講解的腳本智能感知不僅適用于jQuery類庫, 還適用于自己編寫的javascript代碼. 

 

七.總結

本文簡單介紹了jQuery, 以及如何搭建腳本開發(fā)環(huán)境. 示例程序沒有復雜的功能, 可能還無法讓沒有接觸過jQuery的人認識到它的強大.但是僅憑借"多瀏覽器支持"這一特性, 就足以讓我們學習并使用jQuery, 因為如今想編寫跨瀏覽器的腳本真的是一件困難的事情!

在后續(xù)文章中我們將深入學習jQuery選擇器, 事件, 工具函數(shù), 動畫, 以及插件等.

本文代碼下載:

http://files.cnblogs.com/zhangziqiu/Code-jQueryStudy-1.rar

JQuery相關

出品公司:

藍藍設計(北京蘭亭妙微科技有限公司)是一家專注而深入的設計機構 ,為期望卓越的國內外企業(yè)提供有效的視覺設計、ui界面設計、網(wǎng)站建設、用戶體驗服務,涉及互聯(lián)網(wǎng)、IT軟件、電子、銀行、保健品等多個行業(yè),并建立了良好的口碑,積累了豐富的經(jīng)驗。 
全國統(tǒng)一服務熱線  400-608-6026  QQ:896757335

日歷

鏈接

個人資料

藍藍設計的小編 http://www.index123.cn

存檔

精品一二三四在线_国产激情精品久久久第一区二区_av欧美精品.com_欧美xxxxxxxx_国模无码大尺度一区二区三区_欧美成人精品3d动漫h_亚洲成人av一区_韩国v欧美v亚洲v日本v_欧美色视频在线_在线91免费看_成人a区在线观看_麻豆91精品视频_亚洲h动漫在线_成人app软件下载大全免费_日本午夜一本久久久综合_亚洲欧美在线视频

    日韩欧美中文字幕一区| 国产精品久久久久久久久免费桃花 | 在线免费观看一区| 国产成人免费av在线| 久久99精品国产.久久久久| 亚洲国产精品一区二区久久恐怖片| 欧美高清在线一区| 欧美激情一区二区在线| 国产三级精品在线| 日本一区二区三区国色天香 | 色综合久久久久综合体| 99久久精品情趣| 91女人视频在线观看| 不卡高清视频专区| 91日韩精品一区| 欧美亚洲国产一区二区三区va| 色综合激情久久| 欧美日韩中文另类| 日韩午夜av电影| 精品国精品自拍自在线| 久久夜色精品国产噜噜av| 久久精品在线免费观看| 国产精品久久网站| 亚洲午夜久久久久中文字幕久| 天堂久久一区二区三区| 久久99精品久久久久久动态图| 国产精品影视网| 95精品视频在线| 3d动漫精品啪啪一区二区竹菊| 欧美一二三区精品| 国产农村妇女精品| 日韩伦理免费电影| 日本欧美韩国一区三区| 国模大尺度一区二区三区| 成人v精品蜜桃久久一区| 在线看不卡av| 久久久综合精品| 亚洲主播在线观看| 韩国三级在线一区| 91美女在线视频| 精品免费国产一区二区三区四区| 欧美国产一区在线| 亚洲午夜在线观看视频在线| 精品一区二区三区欧美| 91色.com| 久久久久久免费| 午夜成人免费视频| 成人高清视频免费观看| 91精品中文字幕一区二区三区| 国产亚洲综合性久久久影院| 亚洲综合男人的天堂| 国产在线精品不卡| 欧美在线free| 国产精品国产自产拍在线| 免费在线观看视频一区| 色视频欧美一区二区三区| 久久久久久久久蜜桃| 亚洲va欧美va天堂v国产综合| 成人黄色软件下载| 欧美成人一区二区三区片免费| 亚洲激情中文1区| 成人性色生活片免费看爆迷你毛片| 欧美一级日韩不卡播放免费| 亚洲精品成人少妇| 粉嫩av一区二区三区| 日韩女优视频免费观看| 婷婷成人综合网| 欧美日韩一区高清| 一区二区三区视频在线看| 福利一区在线观看| 久久精品视频一区二区| 蜜臀va亚洲va欧美va天堂| 欧美午夜精品免费| 一区二区在线观看av| 麻豆精品视频在线观看视频| 亚洲欧洲日韩综合一区二区| 美日韩一级片在线观看| 国产精品网曝门| 欧美一区二视频| aaa欧美日韩| 欧美mv日韩mv| 日韩一区欧美二区| 色综合色狠狠天天综合色| 精品嫩草影院久久| 日本美女视频一区二区| 91啦中文在线观看| 国产精品麻豆欧美日韩ww| 国产精品亚洲午夜一区二区三区 | 国产精品视频在线看| 韩国精品主播一区二区在线观看 | 99vv1com这只有精品| 国产欧美日韩在线| 国产mv日韩mv欧美| 国产女人水真多18毛片18精品视频| 精品伊人久久久久7777人| 在线综合+亚洲+欧美中文字幕| 香蕉乱码成人久久天堂爱免费| 欧美亚洲国产bt| 午夜在线成人av| 欧美一级午夜免费电影| 免费成人小视频| 久久综合九色综合97婷婷女人| 国产精品一区二区久激情瑜伽| 国产欧美一区二区精品性色超碰| 懂色一区二区三区免费观看| 一色屋精品亚洲香蕉网站| 91麻豆国产福利精品| 性久久久久久久久| 精品国精品自拍自在线| 国产成人在线色| 一区二区三区在线看| 欧美一区二区视频网站| 国产一区二区不卡在线| 中文字幕中文在线不卡住| 欧美在线不卡视频| 久久国产日韩欧美精品| 欧美激情一区不卡| 欧美日韩国产三级| 国产成人在线电影| 亚洲一级在线观看| 久久综合九色综合欧美就去吻| 91碰在线视频| 精品一区二区在线看| 成人欧美一区二区三区小说| 欧美日韩高清影院| 粉嫩av亚洲一区二区图片| 亚洲第一久久影院| 国产清纯美女被跳蛋高潮一区二区久久w| 99精品国产热久久91蜜凸| 日韩精彩视频在线观看| 中文字幕精品综合| 91精品婷婷国产综合久久性色| 懂色av中文一区二区三区| 人人超碰91尤物精品国产| 亚洲视频香蕉人妖| 久久久久久久久久电影| 欧美美女喷水视频| 成人av在线资源网站| 激情欧美一区二区| 亚洲成人av电影在线| 亚洲视频1区2区| 国产欧美一区二区三区在线老狼| 91精品一区二区三区久久久久久| 色一情一伦一子一伦一区| 国产激情偷乱视频一区二区三区| 天天综合日日夜夜精品| 亚洲男人的天堂网| 国产精品婷婷午夜在线观看| 久久在线观看免费| 日韩欧美国产不卡| 777奇米成人网| 欧美中文字幕亚洲一区二区va在线 | 2024国产精品| 91麻豆精品国产综合久久久久久| 91国偷自产一区二区三区观看| 成人午夜av影视| 国产91露脸合集magnet| 国产在线视频精品一区| 久久99精品久久只有精品| 青青草成人在线观看| 天天综合色天天综合| 婷婷国产v国产偷v亚洲高清| 午夜欧美电影在线观看| 一区2区3区在线看| 亚洲午夜精品网| 亚洲国产成人精品视频| 亚洲成av人影院| 婷婷六月综合网| 免费在线观看视频一区| 蜜臀av亚洲一区中文字幕| 日本美女一区二区三区| 久久99热这里只有精品| 国产一区二区三区久久悠悠色av| 韩日精品视频一区| 粉嫩av亚洲一区二区图片| av在线不卡网| 欧美视频在线播放| 在线播放亚洲一区| 精品国产一区二区在线观看| 欧美精品一区二区精品网| 国产女同互慰高潮91漫画| 一区在线播放视频| 亚洲国产美女搞黄色| 蜜桃一区二区三区在线观看| 国产一区欧美日韩| av午夜一区麻豆| 欧美日韩你懂的| 精品日本一线二线三线不卡| 中文字幕成人av| 亚洲第一精品在线| 国产综合久久久久久鬼色| www.日本不卡| 欧美人妖巨大在线| 久久女同精品一区二区| 日韩美女视频一区二区 | 国模无码大尺度一区二区三区| 岛国精品在线观看| 欧美系列一区二区| 亚洲精品一线二线三线无人区| 国产精品久久久久三级|