亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

使用jQuery簡化Ajax開發—Ajax開發入門[1]

2019-11-17 04:23:52
字體:
來源:轉載
供稿:網友

jQuery是一個可以簡化 javaScript™以及Ajax(Asynchronous Javascript + xml,異步Javascript和XML)編程的Javascript庫。不同于其他的Javascript庫,jQuery有他自己的哲學,使你可以很簡單的編寫代碼。這篇文章就會帶領你見識一下jQuery的哲學,探討一下他的特性以及功能,并且會做一些ajax的示例,以及如何使用plug- in(插件)來擴展jQuery。

1. 什么是jQuery?

jQuery是個很優秀的Javascript庫,它誕生于2006年,出自John Resig之手。不管你是一個javascript新手,但是卻想嘗試一下DOM(Document Object Model)以及Ajax的繁雜,抑或你是個javascript專家級人物,但是已經厭倦了反復的重復那無味的DOM以及Ajax腳本,jQuery都將是你的不二選擇。

jQuery會幫助你保持代碼的簡單和簡潔。你不必再去寫一大堆重復的循環或者是DOM調用腳本,使用jQuery,你將很快找到關鍵點,并且可以以最少的代碼表達你的思想。

jQuery的哲學其實很單一:簡單、可重用。當你理解并且認同這種思想的時候,你就可以開始體會一下使用jQuery能讓你的編程變得多么輕松愉快了!

2. 一些簡單概念

這里是個簡單的例子,向你展示jQuery如何影響你編寫的代碼。做的事情其實很簡單,比如對頁面上某一區域內的所有鏈接都添加一個click響應事件,你可以使用一般的Javascript以及DOM來寫,代碼見Listing1:

Listing 1. DOM scripting without jQuery

var external_links = document.getElementById('external_links');var links = external_links.getElementsByTagName('a');for (var i=0;i < links.length;i++) {var link = links.item(i);link.onclick = function() {return confirm('You are going to visit: ' + this.href);};}如果使用jQuery的話實現如下:Listing 2. DOM scripting with jQuery$('#external_links a').click(function() {return confirm('You are going to visit: ' + this.href);});很驚訝,是吧?使用jQuery的話,你可以很快找到關鍵點,并且只需要表達你需要表達的,而不需要羅里羅嗦。不需要對這些元素進行循環,click()函數可以處理好這一切。而且你不要謝太多的操作DOM的代碼,你需要的僅僅是使用很少的字符定義你要找的那個元素。來看一下這段代碼是如何工作的,有點小技巧。首先,看到$()函數--jQuery里最有用的最強大的函數.大部分情況下,你使用這個函數從文檔中選擇元素.在這個例子中,使用這個函數傳遞帶有一些級聯樣式表(Cascading Style Sheets,CSS)語法的字符串,jQuery可以很方便的找到這個元素.如果你懂一點基本的CSS選擇符的只是,我想這個語法應該看起來相當熟悉.在Listing2中,#external_links用來尋找帶有id為external_links的元素.接下來的空格表示jQuery要找到在#external_links元素內的所有的<a>元素.用口語開表達的話有點費勁--用DOM腳本來寫也挺麻煩,不過,在CSS里,沒有比這個更簡單的了.$()函數返回一個包含與css選擇符匹配的所有元素的一個jQuery對象. jQuery對象的概念就像是數組,但是它可能含有許多jQuery函數. 舉例來說,你可以調用click函數來綁定一個click事件響應到jQuery對象中的每個元素上.

你還可以向$()函數傳遞一個元素或者是元素的數組,它將把所有的元素打包成一個jQuery對象.你可能想要把這一特性應用到象窗口對象上面.舉例來說, 你有可能使用此函數來加載事件,像這樣:


window.onload = function() {// do this stuff when the page is done loading};如果使用jQuery的話,你可以這樣寫:


$(window).load(function() {// run this when the whole page has been downloaded});如你所知,等待一個窗口的加載是異常痛苦的,因為必須加載整個頁面,包括頁面上所有的圖片. 某些情況下,你需要首先加載圖片,但是大部分時候,你可能只需要看到一下超文本的標記(HTML).jQuery通過在文檔上創建一個很特殊的事件ready來解決這個問題,使用方法如下:$(document).ready(function() {// do this stuff when the HTML is all ready});這段代碼創建一個document元素的jQuery對象, 然后當html DOM文檔準備完畢后調用此實例. 你可以無限次的調用這個函數. 另外,
在真正的jQuery風格代碼中,這個函數還有一個縮寫形式.簡單的傳遞一個函數給$()函數:


$(function() {// run this when the HTML is done downloading});到現在位置,我已經向你展示了三種不同的使用$()函數的方法.第四種方式, 你可以使用一個字符串創建一個元素. 結果是一個包含此元素的jQuery對象. Listing3展示了一個增加一段到頁面上的例子:

Listing 3. Creating and appending a simple paragraph

$('<p></p>').html('Hey World!').css('background', 'yellow').appendTo("body");正如你從上面的例子中看到的一樣,jQuery還有一個很強大的功能就是方法鏈(method chaining), 每次你對一個jQuery對象調用一個方法,這個方法將同樣返回一個jQuery對象. 這就是說如果你需要對一個jQuery對象調用多個方法的話, 你可以不必重復寫css選擇符,可以像這樣:


$('#message').css('background', 'yellow').html('Hello!').show();3.jQuery讓Ajax變得異常簡單使用jQuery,Ajax恐怕不能變得再簡單了. jQuery有一系列的函數,可以使簡單的事情變得真正簡單,讓復雜的事情也能變得盡可能的簡單.Ajax的一個一般用法就是加載一段html代碼到頁面上的某一區域. 要實現這個,你只要簡單的選中這個元素,然后使用load()函數.下面是個例子,用來更新一些統計信息.$('#stats').load('stats.html');通常,你可能需要向服務器端的頁面傳遞一些參數. 你可能猜到了, 使用jQuery來實現的話會十分簡單. 你可以選擇使用$.post()或者$.get(), 當然要根據你的具體需要. 如果需要, 你可以傳遞一個可選的數據對象和一個回調函數. Listing4是一個發送數據以及使用回調函數的簡單例子:

Listing 4. Sending data to a page with Ajax

$.post('save.cgi', {text: 'my string',number: 23}, function() {alert('Your data has been saved.');});如果你真的想要一些復雜的Ajax代碼,那就是用$.ajax()函數. 你可以指定數據類型為xml, html, script或者json, jQuery 會為你自動準備好結果一遍你的回調函數能夠立即使用這些數據. 你還可以設定beforeSend,error,success, 以及complete回調函數來給用戶一些ajax體驗的更多提示信息. 另外,還有一些參數,可以讓你設置ajax請求的超時時間,或者一個頁面的"最后更改"狀態. Listing5展示了一個獲取xml文檔并使用我上面提到的一些參數的簡單例子:

Listing 5. Complex Ajax made simple with $.ajax()

$.ajax({url: 'document.xml',type: 'GET',dataType: 'xml',timeout: 1000,error: function(){alert('Error loading XML document');},success: function(xml){// do something with xml}});當你成功的獲得xml反饋的時候, 你可以使用jQuery來遍歷xml文檔,就像你操作html的方式一樣. 這使操作一個xml文件以及整合內容到頁面上變得十分的簡單. Listing6 擴展了success函數, 根據xml文檔里的每個<item>在頁面上增加一個了list(列表)條目.

Listing 6. Working with XML using jQuery

success: function(xml){$(xml).find('item').each(function(){var item_text = $(this).text();$('<li></li>').html(item_text).appendTo('ol');});}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品美女国产在线| 国产美女直播视频一区| 亚洲国产美女久久久久| 国产精品盗摄久久久| 日韩欧美在线字幕| 亚洲精品福利视频| 国产精品日本精品| 久久精品国产久精国产思思| 欧美日韩成人黄色| 精品亚洲一区二区三区四区五区| 成人综合网网址| 精品亚洲一区二区三区在线播放| 日韩av免费在线播放| 亚洲色图在线观看| 91精品国产综合久久久久久久久| 国产精品va在线播放| 国产精品精品一区二区三区午夜版| 亚洲一区精品电影| 欧洲成人免费aa| 色先锋资源久久综合5566| 亚洲激情国产精品| 日韩成人网免费视频| 国产精品日韩久久久久| 欧美日韩在线观看视频小说| 亚洲一区二区久久久久久久| 超碰精品一区二区三区乱码| 日韩成人性视频| 亚洲欧美国产视频| 日韩在线精品一区| 日韩欧美国产网站| 亚洲一区二区三| 久久久国产视频| 午夜精品久久久久久99热| 成人免费在线视频网站| 亚洲欧美国产日韩天堂区| 亚洲欧洲在线视频| 欧美精品videos| 亚洲欧美日韩视频一区| 一个人看的www欧美| 日韩欧美在线一区| 日本欧美中文字幕| 久久久精品一区二区三区| 91av在线免费观看| 欧美孕妇与黑人孕交| 色婷婷亚洲mv天堂mv在影片| 精品性高朝久久久久久久| 日韩中文字幕不卡视频| zzijzzij亚洲日本成熟少妇| 国模gogo一区二区大胆私拍| 一区二区三区视频免费在线观看| 日韩欧美精品中文字幕| 欧美国产日韩在线| 日韩欧美国产高清91| 精品久久久久久久久久久久久| 色悠久久久久综合先锋影音下载| 91沈先生作品| 最近更新的2019中文字幕| 777午夜精品福利在线观看| 久久亚洲精品小早川怜子66| 亚洲www在线| 久久久久久国产精品| www亚洲精品| 欧美日韩中文字幕在线| 国产精品精品一区二区三区午夜版| 亚洲视频欧美视频| 日韩av快播网址| 中文字幕在线精品| 亚洲精品福利在线观看| 精品夜色国产国偷在线| 欧美性色视频在线| 日韩欧美视频一区二区三区| 久久久国产精品x99av| 成人免费视频xnxx.com| 亚洲一区二区在线| 91国内精品久久| 自拍偷拍免费精品| 91精品国产电影| 国产精品久久久久aaaa九色| 国外视频精品毛片| 久久久人成影片一区二区三区观看| 日韩的一区二区| 91成人天堂久久成人| 欧美成年人视频| 欧美激情在线观看视频| 欧美精品久久久久久久免费观看| 亚洲福利视频免费观看| 亚洲偷欧美偷国内偷| 欧美不卡视频一区发布| 亚洲免费一级电影| 色综合久久久888| 欧美一级淫片aaaaaaa视频| 亚洲黄色成人网| 日韩欧美综合在线视频| 中文字幕一区电影| 北条麻妃99精品青青久久| 欧美在线xxx| 粉嫩av一区二区三区免费野| 91在线无精精品一区二区| 国产精品国语对白| 亚洲精品日韩激情在线电影| 国产亚洲激情视频在线| 色噜噜狠狠狠综合曰曰曰88av| 欧美成aaa人片在线观看蜜臀| 午夜精品视频在线| 欧美日韩一区二区精品| 亚洲影院污污.| 欧美日韩午夜激情| 亚洲性av网站| 国产97在线观看| 亚洲国产高清自拍| 国产精品美女视频网站| 久久精品99国产精品酒店日本| 亚洲国产精品美女| 夜色77av精品影院| 2018中文字幕一区二区三区| 91精品91久久久久久| 亚洲精品福利资源站| 夜夜躁日日躁狠狠久久88av| 亚洲剧情一区二区| 国产亚洲美女精品久久久| 黄色一区二区在线观看| 欧美寡妇偷汉性猛交| 欧美日韩中国免费专区在线看| 色一情一乱一区二区| 日本久久精品视频| 国产精品欧美激情在线播放| 久久av在线播放| 亚洲国产精品va在线看黑人| 久久久成人精品| 国产视频精品va久久久久久| 韩国美女主播一区| 久久久99久久精品女同性| 色婷婷av一区二区三区在线观看| 国产乱人伦真实精品视频| 亚洲男人第一网站| 最近日韩中文字幕中文| 久久久久久美女| 456亚洲影院| 精品久久久久久久久久久| 亚洲剧情一区二区| 欧美韩国理论所午夜片917电影| 黄色成人在线播放| 久久久久免费视频| 亚洲最新在线视频| 久久久久北条麻妃免费看| 国产在线拍揄自揄视频不卡99| 一区二区欧美在线| 国产精品久久av| 亚洲精品久久久久中文字幕二区| 91在线视频一区| 91理论片午午论夜理片久久| 国产欧美va欧美va香蕉在| 亚洲精品美女在线观看播放| 久久人人看视频| 国产视频一区在线| 国产一区二区黑人欧美xxxx| 久久久久久九九九| 久久九九精品99国产精品| 精品视频在线播放色网色视频| 欧美精品免费在线观看| 成人精品aaaa网站| 色播久久人人爽人人爽人人片视av| 日韩在线观看免费av| 亚洲奶大毛多的老太婆|