出版時間:2009-11 出版社:人民郵電出版社 作者:Jonathan Chaffer,Karl Swedberg 頁數(shù):324 譯者:李松峰,盧玉平
Tag標簽:無
前言
得知Karl Swedberg和Jonathan Chaffer共同編寫這奉jQuery教程,我深感榮幸。作為第一本jQuery圖書,它為其他jQuery——實際上,也為其他JavaScript——圖書,樹立了一個新標桿。第一版自面世以來,始終高居最暢銷JavaScrilpt圖書榜首,究其原因,概源自其內在的高品質和對細節(jié)的關注。 我尤其高興,是Karl和Jonathan共同執(zhí)筆撰寫了這本書,因為我對他們非常了解,知道他們是寫這方面圖書的最佳人選。作為jQuery~千發(fā)團隊的核心人員,我在過去的幾年間對Karl有了充分的了解,特別是對他編寫本書的情況十分熟悉??纯醋罱K作品就會知道,作為開發(fā)人員和曾經(jīng)的英文教師,由他來完成這個寫書任務簡直是老天的巧妙安排。 我還曾有機會與他們兩位謀面——對于從事分布式開源項目工作的我們來說,這種見面機會算是極為難得的。當然,他們目前依舊是jQuery社區(qū)的中堅分子?! Query社區(qū)中有許許多多不同的人在使用jQuery,其中包括設計人員、開發(fā)人員、有編程經(jīng)驗的人和沒有編程經(jīng)驗的人。即使是jQuery團隊內部,也有很多不同背景的人為這個項目的發(fā)展提供各自的建議。來自五湖四海的jQuery用戶都有著同一個目標,即我們這個由開發(fā)人員和設計人員組成的社區(qū),其宗旨就是讓JavaScript開發(fā)變得越來越簡單?! 〈藭r此刻,重申開源項目是社區(qū)導向的,或者說開源項目的目標就是幫助新用戶快速上手,好像總有幾分陳詞濫調的意味。然而,這個宗旨對jQuery而言絕非表面上做做姿態(tài),其理念恰恰正是項目本身綿綿不絕的動力源泉。在jQuery團隊中,除了維護核心代碼的人,實際上還有更多的人在負責管理社區(qū)、撰寫文檔和編寫插件。雖然庫本身的穩(wěn)定性至關重要,但代碼背后的社區(qū)也絕對不容忽視。一個項目是等閑平庸、舉步維艱,還是能處處滿足甚至超出用戶的期許,可以說完全取決于社區(qū)?! ∥覀內绾芜\營項目,用戶如何使用我們的代碼,是jQuery與大多數(shù)開源項目(以及大多數(shù)JavaScript庫)的根本差異所在。jQuery項目及其社區(qū)是具有高度智慧的。我們深知是什么讓jQuery帶給了用戶不同的編程體驗,并且也在竭盡全力把這些知識和智慧傳遞給我們的用戶?! ⌒涫峙杂^永遠不會理解jQuery社區(qū),只有參與其中,潛心鉆研,才能獲得切身體驗。我們衷心希望本書讀者有朝一日都能夠加入jQuery社區(qū)。無論是加入我們的論壇、郵件列表還是博客,jQueiy社區(qū)都能為你更好地利用jQuery提供各方面幫助?! ξ覀€人而言,jQuery絕不僅僅就是一些代碼塊那么簡單,它是這幾年來,為了讓這個庫更有價值,社區(qū)成員日積月累的所有經(jīng)驗的大匯聚。
內容概要
本書作為《jQuery基礎教程》的升級版,涵蓋了jQuery 1.3的全部新特性,特別是新增了介紹jQuery UI(jQuery官方用戶界面插件庫)的內容。本書前6章以通俗易懂的方式介紹了jQuery的基本概念,主要包括jQuery的選擇符、事件、效果、DOM操作、AJAX支持等。隨后3章從理論到實踐,通過表格操作、構建功能型表單、實現(xiàn)滑移和翻轉效果等實例,深入淺出地講解了如何創(chuàng)造性地運用jQuery提供的豐富而強大的API。本書最后兩章專門介紹了如何使用和編寫jQuery插件。值得一提的是,本版新增的附錄D分門別類地列出了所有jQuery API,為高效使用jQuery提供了方便?! ”緯⒅乩碚撆c實踐相結合,適合初中級Web開發(fā)人員閱讀和參考。
作者簡介
Jonathan Chaffer 資深Web專家,Structure互動公司CT0。著名jQuery資源網(wǎng)站LeamingjQuery.com創(chuàng)始人之一。他還是著名的開源CMS項目Drupa J的核心開發(fā)人員。開發(fā)了廣受歡迎的Content Construction Kit(內容構建工具包)模塊并大幅修改了菜單系統(tǒng)。
書籍目錄
第1章 jQuery入門 1.1 jQuery能做什么 1.2 jQuery為什么如此出色 1.3 jQuery項目歷史 1.4 第一個jQuery驅動的頁面 1.4.1 下載jQuery 1.4.2 建立HTML文檔 1.4.3 編寫jQuery代碼 1.4.4 最終結果 1.5 小結 第2章 選擇符 2.1 DOM 2.2 工廠函數(shù)$() 2.3 CSS選擇符 2.4 屬性選擇符 2.5 自定義選擇符 2.5.1 每隔一行為表格添加樣式 2.5.2 基于表單的選擇符 2.6 DOM遍歷方法 2.6.1 為特定單元格添加樣式 2.6.2 連綴 2.7 訪問DOM元素 2.8 小結 第3章 事件 3.1 在頁面加載后執(zhí)行任務 3.1.1 代碼執(zhí)行的時機選擇 3.1.2 基于一個頁面執(zhí)行多個腳本 3.1.3 縮短代碼的簡寫方式 3.1.4 與其他庫共存 3.2 簡單的事件 3.2.1 簡單的樣式轉換器 3.2.2 簡寫的事件 3.3 復合事件 3.3.1 顯示和隱藏高級特性 3.3.2 突出顯示可單擊的項 3.4 事件的旅程 3.5 通過事件對象改變事件的旅程 3.5.1 事件目標 3.5.2 停止事件傳播 3.5.3 默認操作 3.5.4 事件委托 3.6 移除事件處理程序 3.6.1 事件的命名空間 3.6.2 重新綁定事件 3.7 模仿用戶操作 3.8 小結 第4章 效果 4.1 修改內聯(lián)CSS 4.2 基本的隱藏和顯示 4.3 效果和速度 4.3.1 指定顯示速度 4.3.2 淡入和淡出 4.4 復合效果 4.5 創(chuàng)建自定義動畫 4.5.1 切換淡入淡出 4.5.2 創(chuàng)建多個屬性的動畫 4.6 并發(fā)與排隊效果 4.6.1 處理一組元素 4.6.2 處理多組元素 4.6.3 回調函數(shù) 4.6.4 簡單概括 4.7 小結 第5章 DOM操作 5.1 操作屬性 5.1.1 非class屬性 5.1.2 深入理解$()工廠函數(shù) 5.2 插入新元素 5.3 移動元素 5.3.1 標注、編號和鏈接到上下文 5.3.2 插入腳注 5.4 包裝元素 5.5 復制元素 5.5.1 連同事件一起復制 5.5.2 通過復制創(chuàng)建突出引用 5.5.3 通過CSS使突出引用偏離正文 5.5.4 回到代碼中 5.5.5 修飾突出引用 5.6 DOM操作方法的簡單歸納 5.7 小結 第6章 AJAX 6.1 基于請求加載數(shù)據(jù) 6.1.1 追加HTML 6.1.2 操作JavaScript對象 6.1.3 加載XML文檔 6.2 選擇數(shù)據(jù)格式 6.3 向服務器傳遞數(shù)據(jù) 6.3.1 執(zhí)行GET請求 6.3.2 執(zhí)行POST請求 6.3.3 序列化表單 6.4 關注請求 6.5 AJAX和事件 6.6 安全限制 6.7 其他工具 6.7.1 低級AJAX方法 6.7.2 修改默認選項 6.7.3 部分加載HTML頁面 6.8 小結 第7章 表格操作 7.1 排序和分頁 7.1.1 服務器端排序 7.1.2 JavaScript排序 7.1.3 服務器端分頁 7.1.4 JavaScript分頁 7.1.5 完成的代碼 7.2 修改表格外觀 7.2.1 突出顯示行 7.2.2 工具提示條 7.2.3 折疊和擴展 7.2.4 篩選 7.2.5 完成的代碼 7.3 小結 第8章 構建功能型表單 8.1 改進基本的表單 8.1.1 漸進增強表單樣式 8.1.2 根據(jù)條件顯示的字段 8.1.3 表單驗證 8.1.4 復選框操作 8.1.5 完成的代碼 8.2 提升緊湊的表單 8.2.1 字段的占位符文本 8.2.2 AJAX自動完成 8.2.3 完成的代碼 8.3 操作數(shù)字型表單數(shù)據(jù) 8.3.1 購物車表格結構 8.3.2 拒絕非數(shù)字輸入 8.3.3 數(shù)字計算 8.3.4 刪除商品 8.3.5 修改送貨信息 8.3.6 完成的代碼 8.4 小結 第9章 滑移和翻轉 9.1 標題新聞翻轉效果 9.1.1 設置頁面 9.1.2 取得新聞源 9.1.3 設置翻轉效果 9.1.4 標題新聞翻轉函數(shù) 9.1.5 懸停時暫?! ?.1.6 從不同的域中取得新聞源 9.1.7 附加的內部漸變效果 9.1.8 完成的代碼 9.2 圖像傳送帶 9.2.1 設置頁面 9.2.2 通過單擊滑移圖像 9.2.3 放大圖像 9.2.4 完成的代碼 9.3 小結 第10章 使用插件 10.1 查找插件和幫助 10.2 使用插件 10.3 Form插件 10.4 jQuery UI插件庫 10.4.1 效果 10.4.2 交互組件 10.4.3 部件 10.4.4 jQuery UI ThemeRoller 10.5 其他插件 10.5.1 表單類 10.5.2 表格類 10.5.3 圖像類 10.5.4 亮盒及模態(tài)對話框 10.5.5 圖表類 10.5.6 事件類 10.6 小結 第11章 開發(fā)插件 11.1 添加新的全局函數(shù) 11.1.1 添加多個函數(shù) 11.1.2 關鍵所在 11.1.3 創(chuàng)建實用方法 11.2 添加jQuery對象方法 11.2.1 對象方法的環(huán)境 11.2.2 方法連綴 11.3 DOM遍歷方法 11.4 添加新的簡寫方法 11.5 方法的參數(shù) 11.5.1 簡單參數(shù) 11.5.2 參數(shù)映射 11.5.3 默認參數(shù)值 11.5.4 回調函數(shù) 11.5.5 可定制的默認值 11.6 添加選擇符表達式 11.7 共享插件 11.7.1 命名約定 11.7.2 別名$的使用 11.7.3 方法接口 11.7.4 文檔格式 11.8 小結 附錄A 在線資源 附錄B 開發(fā)工具 附錄C JavaScript閉包 附錄D 快速參考
章節(jié)摘錄
有了包含DOM節(jié)點的數(shù)組后,就可以對其排序了,不過首先必須編寫一個適當?shù)谋容^函數(shù)。我們打算根據(jù)相應單元格中的文本內容來對表格行排序,因此比較函數(shù)應該比較單元格的文本內容。由于在內部的.each()調用中捕獲到了列索引,所以我們知道要查看哪個單元格。之所以要把文本轉換成大寫,是因為JavaScriptr和的字符串比較區(qū)分大小寫,而我們希望排序結果不區(qū)分大小寫。為了減少冗余計算,我們把需要比較的鍵值(大寫的文本內容)保存在變量中,比較它們,根據(jù)上面討論的規(guī)則返回正數(shù)、負數(shù)或者零?! ∽詈?,通過循環(huán)遍歷排序后的數(shù)組,將表格行重新插入到表格中。注意,因為.append()方法不會復制節(jié)點,因此該方法會移動表格行而不是復制表格行。于是,我們就能看到按字母排序的表格?! ∫陨鲜菨u進增強的另一面——平穩(wěn)退化的一個例子。與我們前面討論的AJAX解決方案不同,這個例子中的排序功能在沒有JavaScript的情況下是無法使用的,因為我們假設服務器上沒有處理這種情況的腳本程序。由于排序功能有賴于JavaScrlpt,因此只通過JavaScript代碼添加clickable類,可以確保在缺少腳本而無法使用排序功能時,不會顯示可以排序的界面。頁面中的表格也在沒有JavaScfipt的情況下平穩(wěn)退化,雖然無法進行排序,但仍然具有基本的功能?! ∮捎谂判蜻^程中移動了表格行,因而導致原來交替顯示的行顏色發(fā)生了混亂,如圖7-3所示。
媒體關注與評論
“本書是學習jQuery的最佳途徑?!薄 猄lashdol.org “本書和jQuery框架本身一樣優(yōu)雅和簡潔。作者恰到好處地講述了如何使用jQuery加快RIA開發(fā)?!薄 狝jaxian.com
編輯推薦
《jQuery基礎教程(第2版)》是《jQuery基礎教程》升級版,涵蓋jQuery1.3,Amazon全五星盛譽,jQuery官方網(wǎng)站推薦?! Query是功能強大卻又簡潔明快的輕量級JavaScript庫,出自名家之手。因為在DOM操作、事件處理、Ajax特性以及動畫特效等方面的出色表現(xiàn),它迅速從眾多JavaScript庫中脫穎而出,成為一顆閃亮的明星。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載