嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片

從零開(kāi)始學(xué)習(xí)jQuery (一) 開(kāi)天辟地入門篇

轉(zhuǎn)載藍(lán)藍(lán)設(shè)計(jì)(   m.sdgs6788.com  )是一家專注而深入的設(shè)計(jì)機(jī)構(gòu) ,為期望卓越的國(guó)內(nèi)外企業(yè)提供有效的   BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、  ipad界面設(shè)計(jì)   、  包裝設(shè)計(jì) 、  圖標(biāo)定制 、  用戶體驗(yàn) 、交互設(shè)計(jì)、   網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)

來(lái)源:http://www.cnblogs.com/zhangziqiu/ 

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中,   請(qǐng)點(diǎn)這里

一.摘要

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

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

轉(zhuǎn)載請(qǐng)注明子秋出品!博客園首發(fā)!

 

二.前言

首先道個(gè)歉! "從零開(kāi)始學(xué)習(xí)ASP.NET MVC"系列文章在即將介紹Filter時(shí)就沒(méi)有更新了, 原因就是最近我一直在研究和學(xué)習(xí)jQuery.看到本系列的名稱和文章標(biāo)題, 看過(guò)我的MVC系列文章的人會(huì)感到很熟悉. 不久要給公司的人做培訓(xùn), 所以特意制作了本教程.

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

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

下面讓我們開(kāi)始jQuery之旅.

 

三.什么是jQuery

jQuery是一套Javascript腳本庫(kù).  在我的博客中可以找到"Javascript輕量級(jí)腳本庫(kù)"系列文章. Javascript腳本庫(kù)類似于.NET的類庫(kù), 我們將一些工具方法或?qū)ο蠓椒ǚ庋b在類庫(kù)中, 方便用戶使用.

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

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

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

jQuery有如下特點(diǎn):

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

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

2.解決瀏覽器兼容性問(wèn)題

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

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

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

4.糾正錯(cuò)誤的腳本知識(shí)

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

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

 

四.Hello World jQuery

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

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

1.下載jQuery類庫(kù)

jQuery的項(xiàng)目下載放在了Google Code上, 下載地址:

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

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

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

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

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

2.編寫程序

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

<!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="修改內(nèi)容為 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

頁(yè)面上有三個(gè)按鈕, 分別用來(lái)控制Hello World的顯示,隱藏和修改其內(nèi)容.

此示例使用了:

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

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

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

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

在接下來(lái)的教程中我們將深入這些內(nèi)容的學(xué)習(xí).

 

五.啟用Visual Studio 對(duì)jQuery的智能感知

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

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


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

image

在使用方法時(shí), 還會(huì)有更多的提示:

image

 

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

image

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

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

image

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

1. 控制編譯結(jié)果

    <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)上推薦的方式. 編譯后的頁(yè)面上只有min版本的引用, 同時(shí)在開(kāi)發(fā)時(shí)能夠享受到智能感知.但是注意這種方式引用的min類庫(kù)只能是1.2.6或者之前的版本號(hào). 的1.3.2的所有非vsdoc版本的jquery庫(kù)引用后都會(huì)導(dǎo)致JScript Intellisense更新出錯(cuò). 這是1.3.2版本的一個(gè)bug, 期待后續(xù)版本中解決. 其實(shí)大家完全可以使用1.2.6版本的min庫(kù), 本教程涉及的jquery功能, 1.2.6版本基本都支持.

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

2. 使用后端變量

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

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


后臺(tái)聲明變量:

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

 

 

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

上面我們解決了在頁(yè)面中智能感知的問(wèn)題, 其實(shí)在獨(dú)立的.js文件中我們同樣可以啟用腳本的智能感知, 在IntellisenseDemo.js文件中,添加如下語(yǔ)句:

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

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

image

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

 

七.總結(jié)

本文簡(jiǎn)單介紹了jQuery, 以及如何搭建腳本開(kāi)發(fā)環(huán)境. 示例程序沒(méi)有復(fù)雜的功能, 可能還無(wú)法讓沒(méi)有接觸過(guò)jQuery的人認(rèn)識(shí)到它的強(qiáng)大.但是僅憑借"多瀏覽器支持"這一特性, 就足以讓我們學(xué)習(xí)并使用jQuery, 因?yàn)槿缃裣刖帉懣鐬g覽器的腳本真的是一件困難的事情!

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

本文代碼下載:

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

JQuery相關(guān)

出品公司:

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

日歷

鏈接

個(gè)人資料

存檔

嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片
<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 在线亚洲一区二区| 久久九九99| 久久久人人人| 久久超碰97中文字幕| 99热这里只有成人精品国产| 亚洲福利视频一区| 亚洲国产欧美久久| 亚洲精品欧美极品| 亚洲一级电影| 久久av红桃一区二区小说| 久久国产66| 欧美国产精品劲爆| 亚洲伦理在线| 欧美一区2区视频在线观看 | 亚洲国产99精品国自产| 欧美在线免费播放| 亚洲美女黄色| 永久免费视频成人| 99视频超级精品| 欧美一区二区三区啪啪| 久久先锋资源| 亚洲精品小视频在线观看| 一区二区三区成人精品| 欧美在线视频观看免费网站| 欧美国产精品专区| 欧美一区二区三区日韩| 日韩视频免费看| 久久av二区| 亚洲第一狼人社区| 亚洲午夜在线观看| 久色成人在线| 国产麻豆成人精品| 亚洲欧洲一级| 久久久中精品2020中文| 亚洲精品在线二区| 久久久久91| 国产精品乱人伦一区二区| 91久久在线| 国产亚洲一区二区在线观看| 亚洲日本一区二区| 久久久久久久精| 一区二区三区高清在线| 蘑菇福利视频一区播放| 国产精品无码永久免费888| 中文在线资源观看网站视频免费不卡 | 最新高清无码专区| 午夜亚洲视频| 欧美影院午夜播放| 国产精品久久网| av不卡在线| 欧美激情一区二区久久久| 性娇小13――14欧美| 国产精品高清免费在线观看| 亚洲美女在线看| 欧美激情视频一区二区三区免费| 欧美亚洲在线播放| 国产精品一区二区三区久久 | 亚洲一区二区高清视频| 欧美成人xxx| 久久一区二区三区超碰国产精品| 国产精品免费一区二区三区在线观看| 99精品欧美一区二区三区综合在线| 欧美成人综合网站| 欧美www视频在线观看| 亚洲大胆美女视频| 欧美成人精品不卡视频在线观看| 久久久水蜜桃av免费网站| 激情欧美国产欧美| 麻豆国产精品va在线观看不卡| 欧美在线不卡| 激情久久影院| 最近看过的日韩成人| 欧美日韩1区2区| 国产精品99久久久久久宅男 | 久久九九国产精品| 久久精品国产999大香线蕉| 激情欧美丁香| 亚洲黄色大片| 在线亚洲自拍| 在线免费观看视频一区| 久久亚洲综合色一区二区三区| 久久精品最新地址| 日韩视频免费看| 一区二区三区欧美视频| 国产九色精品成人porny| 久久久久一区二区三区四区| 美女脱光内衣内裤视频久久影院| 一本色道久久综合亚洲精品不 | 午夜欧美不卡精品aaaaa| 国产女主播视频一区二区| 久久国产黑丝| 欧美国产日韩免费| 欧美伊人久久久久久午夜久久久久 | 国产精品国产三级国产专区53| 亚洲欧美日韩国产另类专区| 欧美在线观看一区| 亚洲国产精品一区| 中文在线一区| 亚洲高清视频一区| 亚洲精品在线二区| 黑人中文字幕一区二区三区| 亚洲精品久久久一区二区三区| 国产精品美女诱惑| 男男成人高潮片免费网站| 欧美片在线观看| 久久夜色精品国产欧美乱| 欧美高清日韩| 久久久久免费视频| 欧美精品www在线观看| 一区二区三区免费看| 亚洲欧美另类综合偷拍| 亚洲成人在线网| 亚洲一区二区三区四区在线观看| 精品1区2区| 亚洲欧美日韩国产一区| 一区二区高清视频| 久久久亚洲综合| 午夜视频在线观看一区二区三区| 麻豆精品精华液| 久久久久久久久伊人| 国产精品成人一区二区网站软件 | 亚洲福利免费| 国产精品亚洲а∨天堂免在线| 欧美高清视频一二三区| 国产区精品在线观看| av成人免费| 夜夜嗨av一区二区三区网站四季av| 久久精品国产综合| 久久精品视频99| 国产日韩一区二区三区在线| 亚洲视频精品| 亚洲你懂的在线视频| 欧美精品在线观看一区二区| 久久精品人人做人人综合| 国产精品乱码久久久久久| 亚洲乱亚洲高清| 中日韩视频在线观看| 欧美国产日韩一区二区在线观看 | 国产一区二区三区久久悠悠色av | 欧美日本韩国一区| 欧美sm视频| 在线免费一区三区| 久久黄金**| 老司机精品视频一区二区三区| 国产一区二区久久精品| 欧美影院久久久| 久久久久成人精品免费播放动漫| 国产精品一区三区| 亚洲网址在线| 欧美在线一区二区| 国产伦精品一区二区三区四区免费 | 欧美成人午夜激情在线| 亚洲第一精品久久忘忧草社区| 校园春色国产精品| 久久青青草综合| 亚洲第一精品电影| 欧美岛国激情| 艳妇臀荡乳欲伦亚洲一区| 午夜视频在线观看一区二区三区| 国产欧美一区二区三区国产幕精品 | 亚洲欧美精品伊人久久| 久久久久久久999精品视频| 国产午夜精品理论片a级大结局| 新67194成人永久网站| 久久亚洲春色中文字幕| 亚洲日本va午夜在线影院| 欧美人与禽猛交乱配| 亚洲无限乱码一二三四麻| 久久麻豆一区二区| 一区二区三区四区国产| 欧美综合国产精品久久丁香| 久久人人97超碰国产公开结果| 在线播放不卡| 国产精品s色| 久久久青草青青国产亚洲免观| 亚洲精品一区二区三区樱花 | 久久久久久自在自线| 亚洲激情六月丁香| 亚洲伊人第一页| 国内精品福利| 欧美日韩一区二区三区在线视频 | 欧美顶级大胆免费视频| 亚洲一区免费观看| 亚洲福利小视频| 国产精品麻豆成人av电影艾秋| 久久久久成人精品| 亚洲天堂网在线观看| 亚洲第一精品夜夜躁人人爽| 午夜精品视频| 99国产一区| 久久欧美中文字幕| 一区二区三区视频在线观看| 国产一区二区电影在线观看| 欧美日韩福利在线观看| 久久久久久久久久码影片| 在线一区欧美| 99精品黄色片免费大全| 欧美xx视频| 久久综合九色欧美综合狠狠| 午夜国产精品视频免费体验区|