1. jQuery
jQuery的字面意思其實(shí)就是JavaScript和查詢(Query)膘婶,即用于輔助開發(fā)JavaScript的庫。jQuery是繼prototype之后的又一個(gè)優(yōu)質(zhì)的Javascript庫,屬于開源編程語言。Query使用戶可以更加方便地處理HTML(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用)、events戴差、實(shí)現(xiàn)動(dòng)畫效果,而且方便地為網(wǎng)站提供AJAX交互铛嘱。jQuery還有一個(gè)比較大的優(yōu)勢(shì)是暖释,它的文檔說明很全,而且各種應(yīng)用也說得很詳盡墨吓,同時(shí)還有很多成熟的插件可供選擇球匕。jQuery可以使用戶的html頁面保持代碼和html的內(nèi)容分離,也就是說帖烘,不需要再在html里面插入一堆js來調(diào)用命令了亮曹,只需要定義id即可。jQuery是免費(fèi)秘症、開源的照卦,使用MIT許可協(xié)議。jQuery的語法設(shè)計(jì)可以使開發(fā)更加便捷乡摹,例如操作文檔對(duì)象役耕、選擇DOM元素、制作動(dòng)畫效果聪廉、事件處理瞬痘、使用Ajax以及其他功能。除此之外板熊,jQuery提供API讓開發(fā)者編寫插件框全。其模塊化的使用方式使開發(fā)者可以很輕松的開發(fā)出功能強(qiáng)大的靜態(tài)或動(dòng)態(tài)網(wǎng)頁。
1). 您可以從網(wǎng)頁中添加 jQuery
①從官網(wǎng) jQuery 下載 jQuery 庫
②從 CDN 中載入 jQuery, 如從 Google 中加載 jQuery
2).下載 jQuery:
- Production version - 用于實(shí)際的網(wǎng)站中干签,已被精簡和壓縮津辩。
- Development version - 用于測(cè)試和開發(fā)(未壓縮,是可讀的代碼)
3). 什么是 jQuery 筒严?
jQuery是一個(gè)JavaScript函數(shù)庫丹泉。jQuery是一個(gè)輕量級(jí)的"寫的少,做的多"的JavaScript庫鸭蛙。jQuery庫包含以下功能:
- HTML 元素選取
- HTML 元素操作
- CSS 操作
- HTML 事件函數(shù)
- JavaScript 特效和動(dòng)畫
- HTML DOM 遍歷和修改
- AJAX
- Utilities
4). jQuery版本支持
在使用jQuery的時(shí)候你應(yīng)該要注意的是 jQuery 2版本以上是不支持 IE6,7筋岛,8 瀏覽器的娶视。那么如果使用的是 IE6,7,8 瀏覽器的話肪获,你就得選擇使用jQuery1.9版本的寝凌,或者,你也可以通過條件注釋在使用 IE6孝赫,7较木,8 瀏覽器的時(shí)候只允許包含 jQuery 1.9.
注釋代碼如下:
<!--[if lt IE 9]>
<script src="jquery-1.9.0.js"></script>
<![endif]-->
<!--[if gte IE 9]><!-->
<script src="jquery-2.0.0.js"></script>
<!--<![endif]-->
5). CDN加載
# 百度
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
# 又拍云
<script src="http://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.2.min.js">
# 新浪
<script src="http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js">
# 谷歌
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
# 微軟
<script src="http://ajax.htmlnetcdn.com/ajax/jQuery/jquery-1.10.2.min.js">
6). jQuery 語法
jQuery 語法是通過選取 HTML 元素,并對(duì)選取的元素執(zhí)行某些操作青柄。
基礎(chǔ)語法:
$(selector).action()
- 美元符號(hào)定義 jQuery
- 選擇符(selector)"查詢"和"查找" HTML 元素
- jQuery 的 action() 執(zhí)行對(duì)元素的操作
實(shí)例:
$(this).hide() - 隱藏當(dāng)前元素
$("p").hide() - 隱藏所有段落
$("p .test").hide() - 隱藏所有 class="test" 的段落
$("#test").hide() - 隱藏所有 id="test" 的元素
7). 文檔就緒事件
為了防止文檔在完全加載(就緒)之前運(yùn)行 jQuery 代碼伐债。
$(document).ready(function(){
// 開始寫 jQuery 代碼...
});
可簡寫為:
$(function(){
// 開始寫 jQuery 代碼...
});
8). jQuery 選擇器
jQuery 選擇器允許您對(duì) HTML 元素組或單個(gè)元素進(jìn)行操作。jQuery 選擇器基于元素的 id致开、類峰锁、類型、屬性双戳、屬性值等"查找"(或選擇)HTML 元素虹蒋。它基于已經(jīng)存在的CSS 選擇器,除此之外飒货,它還有一些自定義的選擇器魄衅。
jQuery 中所有選擇器都以美元符號(hào)開頭:$()。
- 元素選擇:
$("p")
- #id 選擇器:
$("#test")
- .class 選擇器:
$(".test")
- CSS 選擇器:
$("p").css("background-color","red");
語法 | 描述 |
---|---|
$("*") | 選取所有元素 |
$(this) | 選取當(dāng)前 HTML 元素 |
$("p.intro") | 選取 class 為 intro 的 <p> 元素 |
$("p:first") | 選取第一個(gè) <p> 元素 |
$("ul li:first") | 選取第一個(gè) <ul> 元素的第一個(gè) <li> 元素 |
$("ul li:first-child") | 選取每個(gè) <ul> 元素的第一個(gè) <li> 元素 |
$("[href]") | 選取帶有 href 屬性的元素 |
$("a[target='_blank']") | 選取所有 target 屬性值等于 "_blank" 的 <a> 元素 |
$("a[target!='_blank']") | 選取所有 target 屬性值不等于 "_blank" 的 <a> 元素 |
$(":button") | 選取所有 type="button" 的 <input> 元素 和 <button> 元素 |
$("tr:even") | 選取偶數(shù)位置的 <tr> 元素 |
$("tr:odd") | 選取奇數(shù)位置的 <tr> 元素 |
9). jQuery 事件
頁面對(duì)不同訪問者的響應(yīng)叫做事件塘辅。事件處理程序指的是當(dāng) HTML 中發(fā)生某些事件時(shí)所調(diào)用的方法徐绑。
常見 DOM 事件:
鼠標(biāo)事件 | 鍵盤事件 | 表單事件 | 文檔/窗口事件 |
---|---|---|---|
click(單擊) | keypress(按鍵) | submit(提交) | load(加載) |
dblclick(雙擊) | keydown(按下鍵) | change(改變) | resize(改變大小) |
mouseenter(鼠標(biāo)進(jìn)入) | keyup(彈起鍵) | focus(焦點(diǎn)) | scroll(滾動(dòng)) |
mouseleave(鼠標(biāo)離開) | blur(失去焦點(diǎn)) | unload(未加載) | |
hover(懸停) |
比較keypress、keydown與keyup
keydown:在鍵盤上按下某鍵時(shí)發(fā)生莫辨,一直按著則會(huì)不斷觸發(fā)(opera瀏覽器除外)傲茄,它返回的是鍵盤代碼;
keypress:在鍵盤上按下一個(gè)按鍵,并產(chǎn)生一個(gè)字符時(shí)發(fā)生, 返回ASCII碼沮榜。注意: shift盘榨、alt、ctrl等鍵按下并不會(huì)產(chǎn)生字符蟆融,所以監(jiān)聽無效草巡,換句話說,只有按下能在屏幕上輸出字符的按鍵時(shí)keypress事件才會(huì)觸發(fā)型酥。若一直按著某按鍵則會(huì)不斷觸發(fā)山憨。
keyup:用戶松開某一個(gè)按鍵時(shí)觸發(fā),與keydown相對(duì)弥喉,返回鍵盤代碼.
2. jQuery效果
1). 隱藏和顯示
語法:
# 顯示
$(selector).show(speed,callback);
# 隱藏
$(selector).hide(speed,callback);
# 自動(dòng)顯示或隱藏
$(selector).toggle(speed,callback);
- 可選的 speed 參數(shù)規(guī)定隱藏/顯示的速度郁竟,可以取以下值:"slow"、"fast" 或毫秒由境。
- 可選的 callback 參數(shù)是隱藏或顯示完成后所執(zhí)行的函數(shù)名稱棚亩。
可選的 callback 參數(shù)蓖议,具有以下三點(diǎn)說明:- $(selector)選中的元素的個(gè)數(shù)為n個(gè),則callback函數(shù)會(huì)執(zhí)行n次
- callback函數(shù)名后加括號(hào)讥蟆,會(huì)立刻執(zhí)行函數(shù)體勒虾,而不是等到顯示/隱藏完成后才執(zhí)行
- callback既可以是函數(shù)名,也可以是匿名函數(shù)
2). 淡入淡出
# 淡入已隱藏的元素
$(selector).fadeIn(speed,callback);
# 淡出可見元素
$(selector).fadeOut(speed,callback);
# 在 fadeIn() 與 fadeOut() 方法之間進(jìn)行切換
$(selector).fadeToggle(speed,callback);
- 可選的 speed 參數(shù)規(guī)定效果的時(shí)長瘸彤。它可以取以下值:"slow"修然、"fast" 或毫秒。
- 可選的 callback 參數(shù)是 fading 完成后所執(zhí)行的函數(shù)名稱质况。
# 允許漸變?yōu)榻o定的不透明度(值介于 0 與 1 之間)
$(selector).fadeTo(speed,opacity,callback);
- 必需的 speed 參數(shù)規(guī)定效果的時(shí)長愕宋。它可以取以下值:"slow"、"fast" 或毫秒拯杠。
- fadeTo() 方法中必需的 opacity 參數(shù)將淡入淡出效果設(shè)置為給定的不透明度(值介于 0 與 1 之間)掏婶。
- 可選的 callback 參數(shù)是該函數(shù)完成后所執(zhí)行的函數(shù)名稱。
3). 滑動(dòng)
# 向下滑動(dòng)元素
$(selector).slideDown(speed,callback);
# 向上滑動(dòng)元素
$(selector).slideUp(speed,callback);
# 在 slideDown() 與 slideUp() 方法之間進(jìn)行切換
$(selector).slideToggle(speed,callback);
- 可選的 speed 參數(shù)規(guī)定效果的時(shí)長潭陪。它可以取以下值:"slow"雄妥、"fast" 或毫秒。
- 可選的 callback 參數(shù)是滑動(dòng)完成后所執(zhí)行的函數(shù)名稱依溯。
4). 動(dòng)畫
# 創(chuàng)建自定義動(dòng)畫
$(selector).animate({params},speed,callback);
- 必需的 params 參數(shù)定義形成動(dòng)畫的 CSS 屬性老厌。
- 可選的 speed 參數(shù)規(guī)定效果的時(shí)長。它可以取以下值:"slow"黎炉、"fast" 或毫秒枝秤。
- 可選的 callback 參數(shù)是動(dòng)畫完成后所執(zhí)行的函數(shù)名稱。
注:默認(rèn)情況下慷嗜,所有 HTML 元素都有一個(gè)靜態(tài)位置淀弹,且無法移動(dòng)。
如需對(duì)位置進(jìn)行操作庆械,要記得首先把元素的 CSS position 屬性設(shè)置為 relative薇溃、fixed 或 absolute!
I. 操作多個(gè)屬性
$("div").animate({
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
});
當(dāng)使用 animate() 時(shí)缭乘,必須使用 Camel (駝峰)標(biāo)記法書寫所有的屬性名沐序,比如,必須使用 paddingLeft 而不是 padding-left堕绩,使用 marginRight 而不是 margin-right策幼,等等。
II. 使用相對(duì)值
$("div").animate({
left:'250px',
height:'+=150px',
width:'+=150px'
});
III. 使用預(yù)定義的值
$("div").animate({
height:'toggle'
});
IV. 使用隊(duì)列功能
$("button").click(function(){
var div=$("div");
div.animate({height:'300px',opacity:'0.4'},"slow");
div.animate({width:'300px',opacity:'0.8'},"slow");
div.animate({height:'100px',opacity:'0.4'},"slow");
div.animate({width:'100px',opacity:'0.8'},"slow");
});
5). 停止動(dòng)畫
# 停止動(dòng)畫
$(selector).stop(stopAll,goToEnd);
- 可選的 stopAll 參數(shù)規(guī)定是否應(yīng)該清除動(dòng)畫隊(duì)列奴紧。默認(rèn)是 false特姐,即僅停止活動(dòng)的動(dòng)畫,允許任何排入隊(duì)列的動(dòng)畫向后執(zhí)行绰寞。
- 可選的 goToEnd 參數(shù)規(guī)定是否立即完成當(dāng)前動(dòng)畫到逊。默認(rèn)是 false铣口。
6). Callback 方法
Callback 函數(shù)在當(dāng)前動(dòng)畫 100% 完成之后執(zhí)行滤钱。
7). Chaining
通過 jQuery觉壶,可以把動(dòng)作/方法鏈接在一起。Chaining 允許我們?cè)谝粭l語句中運(yùn)行多個(gè) jQuery 方法(在相同的元素上)件缸。
$("#p1").css("color","red")
.slideUp(2000)
.slideDown(2000);
3. jQuery Html
1). jQuery 獲取
I. 獲取內(nèi)容
- text() - 設(shè)置或返回所選元素的文本內(nèi)容
$("#test").text()
- html() - 設(shè)置或返回所選元素的內(nèi)容(包括 HTML 標(biāo)記)
$("#test").html()
- val() - 設(shè)置或返回表單字段的值
$("#test").val()
II. 獲取屬性
- attr() - 用于獲取屬性值:
$("#w3s").attr("href")
2). jQuery 設(shè)置
I. 設(shè)置內(nèi)容
- text() - 設(shè)置或返回所選元素的文本內(nèi)容
$("#test1").text("Hello world!");
- html() - 設(shè)置或返回所選元素的內(nèi)容(包括 HTML 標(biāo)記)
$("#test2").html("<b>Hello world!</b>");
- val() - 設(shè)置或返回表單字段的值
$("#test3").val("Dolly Duck");
- text()铜靶、html() 以及 val() 的回調(diào)函數(shù)
回調(diào)函數(shù)由兩個(gè)參數(shù):被選元素列表中當(dāng)前元素的下標(biāo),以及原始(舊的)值他炊。然后以函數(shù)新值返回您希望使用的字符串争剿。
$("#test1").text(function(i,origText){
return "Old text: " + origText + " New text: Hello world!
(index: " + i + ")";
});
$("#test2").html(function(i,origText){
return "Old html: " + origText + " New html: Hello <b>world!</b>
(index: " + i + ")";
});
II. 設(shè)置屬性
- attr() - 用于設(shè)置/改變屬性值
$("#w3s").attr({
"href" : "http://www.w3cschool.cn/jquery",
"title" : "jQuery 教程"
});
- attr() 的回調(diào)函數(shù)
回調(diào)函數(shù)由兩個(gè)參數(shù):被選元素列表中當(dāng)前元素的下標(biāo),以及原始(舊的)值痊末。然后以函數(shù)新值返回您希望使用的字符串蚕苇。
$("#name").attr("href", function(i,origValue){
return origValue + "/jquery";
});
3). jQuery 添加元素
- append() - 在被選元素內(nèi)部的結(jié)尾插入指定內(nèi)容
$("p").append("Some appended text.");
- prepend() - 在被選元素內(nèi)部的開頭插入指定內(nèi)容
$("p").prepend("Some prepended text.");
- after()] - 在被選元素之后插入內(nèi)容
$("img").after("在后面添加文本");
- before() - 在被選元素之前插入內(nèi)容
$("img").before("在前面添加文本");
注:在jQuery中,append/prepend 是在選擇元素內(nèi)部嵌入凿叠,而after/before 是在元素外面追加涩笤。
4). jQuery 刪除元素
- remove() - 刪除被選元素(及其子元素)
$("#div1").remove();
- empty() - 從被選元素中刪除子元素
$("#div1").empty();
- 過濾被刪除的元素
$("p").remove(".italic");
- 過濾被刪除的元素
5). jQuery CSS 類
- addClass() - 向被選元素添加一個(gè)或多個(gè)類
$("h1,h2,p").addClass("blue");
- removeClass() - 從被選元素刪除一個(gè)或多個(gè)類
$("h1,h2,p").removeClass("blue");
- toggleClass() - 對(duì)被選元素進(jìn)行添加/刪除類的切換操作
$("h1,h2,p").toggleClass("blue");
- css() - 設(shè)置或返回樣式屬性
6). jQuery css() 方法
- 返回 CSS 屬性
css("propertyname");
- 設(shè)置 CSS 屬性
css("propertyname","value");
- 設(shè)置多個(gè) CSS 屬性
css({"propertyname":"value","propertyname":"value",...});
7). jQuery 尺寸
- width() 方法設(shè)置或返回元素的寬度(不包括內(nèi)邊距、邊框或外邊距)
$("#div1").width()
- height() 方法設(shè)置或返回元素的高度(不包括內(nèi)邊距盒件、邊框或外邊距)
$("#div1").height()
- innerWidth() 方法返回元素的寬度(包括內(nèi)邊距)
$("#div1").innerWidth()
- innerHeight() 方法返回元素的高度(包括內(nèi)邊距)
$("#div1").innerHeight()
- outerWidth() 方法返回元素的寬度(包括內(nèi)邊距和邊框)
$("#div1").outerWidth()
- outerHeight() 方法返回元素的高度(包括內(nèi)邊距和邊框)
$("#div1").outerHeight()
- outerWidth(true) 方法返回元素的寬度(包括內(nèi)邊距蹬碧、邊框和外邊距)
- outerHeight(true) 方法返回元素的高度(包括內(nèi)邊距、邊框和外邊距)
4. jQuery 遍歷
1). 祖先
- parent() - 返回被選元素的直接父元素
$("span").parent();
- parents() - 返回被選元素的所有祖先元素炒刁,它一路向上直到文檔的根元素 (<html>)
$("span").parents();
- 使用可選參數(shù)來過濾對(duì)祖先元素的搜索
$("span").parents("ul");
- 使用可選參數(shù)來過濾對(duì)祖先元素的搜索
- parentsUntil() - 返回介于兩個(gè)給定元素之間的所有祖先元素
$("span").parentsUntil("div");
2). 后代
- children() - 返回被選元素的所有直接子元素
$("div").children();
- 可選參數(shù)來過濾對(duì)子元素的搜索
$("div").children("p .1");
- 可選參數(shù)來過濾對(duì)子元素的搜索
- find() - 返回被選元素的后代元素恩沽,一路向下直到最后一個(gè)后代
$("div").find("span");
, 所有后代$("div").find("*");
3). 同胞(siblings)
- siblings() - 返回被選元素的所有同胞元素
$("h2").siblings();
- 可選參數(shù)來過濾對(duì)同胞元素的搜索
$("h2").siblings("p");
- 可選參數(shù)來過濾對(duì)同胞元素的搜索
- next() - 返回被選元素的下一個(gè)同胞元素
$("h2").next();
- nextAll() - 返回被選元素的所有跟隨的同胞元素
$("h2").nextAll();
- nextUntil() - 返回介于兩個(gè)給定參數(shù)之間的所有跟隨的同胞元素
$("h2").nextUntil("h6");
- prev() - 返回被選元素的上一個(gè)同胞元素
$("h2").prev();
- prevAll() - 返回被選元素的所有之前的同胞元素
$("h2").prevAll();
- prevUntil() - 返回介于兩個(gè)給定參數(shù)之間的所有之前的同胞元素
$("h2").prevUntil("h6");
4). 過濾
- first() - 返回被選元素的首個(gè)元素
$("div p").first();
- last() - 返回被選元素的最后一個(gè)元素
$("div p").last();
- eq() - 返回被選元素中帶有指定索引號(hào)的元素
$("p").eq(1);
索引號(hào)從 0 開始,因此首個(gè)元素的索引號(hào)是 0 而不是 1翔始。 - filter() - 允許您規(guī)定一個(gè)標(biāo)準(zhǔn)罗心。不匹配這個(gè)標(biāo)準(zhǔn)的元素會(huì)被從集合中刪除,匹配的元素會(huì)被返回
$("p").filter(".intro");
- not() - 返回不匹配標(biāo)準(zhǔn)的所有元素
$("p").not(".intro");
5. jQuery AJAX
1). AJAX 簡介
AJAX = 異步 JavaScript 和 XML(Asynchronous JavaScript and XML)城瞎。
簡短地說渤闷,在不重載整個(gè)網(wǎng)頁的情況下,AJAX 通過后臺(tái)加載數(shù)據(jù)全谤,并在網(wǎng)頁上進(jìn)行顯示肤晓。
通過 jQuery AJAX 方法,您能夠使用 HTTP Get 和 HTTP Post 從遠(yuǎn)程服務(wù)器上請(qǐng)求文本认然、HTML补憾、XML 或 JSON - 同時(shí)您能夠把這些外部數(shù)據(jù)直接載入網(wǎng)頁的被選元素中。
2). AJAX load() 方法
函數(shù)原型:
$(selector).load(URL,data,callback);
- 必需的 URL 參數(shù)規(guī)定您希望加載的 URL卷员。
- 可選的 data 參數(shù)規(guī)定與請(qǐng)求一同發(fā)送的查詢字符串鍵/值對(duì)集合盈匾。
- 可選的 callback 參數(shù)是 load() 方法完成后所執(zhí)行的函數(shù)名稱。
- 可選的 callback 參數(shù)規(guī)定當(dāng) load() 方法完成后所要允許的回調(diào)函數(shù)毕骡∠鞫回調(diào)函數(shù)可以設(shè)置不同的參數(shù):
- responseTxt - 包含調(diào)用成功時(shí)的結(jié)果內(nèi)容
- statusTXT - 包含調(diào)用的狀態(tài)
- xhr - 包含 XMLHttpRequest 對(duì)象
- 可選的 callback 參數(shù)規(guī)定當(dāng) load() 方法完成后所要允許的回調(diào)函數(shù)毕骡∠鞫回調(diào)函數(shù)可以設(shè)置不同的參數(shù):
$("#div1").load("demo_test.txt",function(responseTxt,statusTxt,xhr){
if(statusTxt=="success")
alert("External content loaded successfully!");
if(statusTxt=="error")
alert("Error: "+xhr.status+": "+xhr.statusText);
});
提示:在jQuery的load()方法中岩瘦,無論AJAX請(qǐng)求是否成功,一旦請(qǐng)求完成(complete)后窿撬,回調(diào)函數(shù)(callback)立即被觸發(fā)启昧。
3). AJAX get() 和 post() 方法
jQuery get() 和 post() 方法用于通過 HTTP GET 或 POST 請(qǐng)求從服務(wù)器請(qǐng)求數(shù)據(jù)。
I. HTTP 請(qǐng)求:GET vs. POST
兩種在客戶端和服務(wù)器端進(jìn)行請(qǐng)求-響應(yīng)的常用方法是:GET 和 POST劈伴。
- GET - 從指定的資源請(qǐng)求數(shù)據(jù)
- POST - 向指定的資源提交要處理的數(shù)據(jù)
GET 基本上用于從服務(wù)器獲得(取回)數(shù)據(jù)密末。注釋:GET 方法可能返回緩存數(shù)據(jù)。
POST 也可用于從服務(wù)器獲取數(shù)據(jù)跛璧。不過严里,POST 方法不會(huì)緩存數(shù)據(jù),并且常用于連同請(qǐng)求一起發(fā)送數(shù)據(jù)追城。
II. GET請(qǐng)求
$.get(URL,callback);
- 必需的 URL 參數(shù)規(guī)定您希望請(qǐng)求的 URL刹碾。
- 可選的 callback 參數(shù)是請(qǐng)求成功后所執(zhí)行的函數(shù)名。
$.get("demo_test.php",function(data,status){
alert("數(shù)據(jù): " + data + "\n狀態(tài): " + status);
});
III. POST
$.post(URL,data,callback);
- 必需的 URL 參數(shù)規(guī)定您希望請(qǐng)求的 URL座柱。
- 可選的 data 參數(shù)規(guī)定連同請(qǐng)求發(fā)送的數(shù)據(jù)迷帜。
- 可選的 callback 參數(shù)是請(qǐng)求成功后所執(zhí)行的函數(shù)名。
$.post("demo_test_post.html",
{
name:"Donald Duck",
city:"Duckburg"
},
function(data,status){
alert("Data: " + data + "nStatus: " + status);
});
IV. noConflict()方法
- 方式一:
noConflict() 方法會(huì)釋放對(duì) $ 標(biāo)識(shí)符的控制辆布。
$.noConflict();
jQuery(document).ready(function(){
jQuery("button").click(function(){
jQuery("p").text("jQuery is still working!");
});
});
- 方式二:
創(chuàng)建自己的簡寫坊萝,noConflict() 可返回對(duì) jQuery 的引用瞳脓,您可以把它存入變量泳桦,以供稍后使用盗迟。
var jq = $.noConflict();
jq(document).ready(function(){
jq("button").click(function(){
jq("p").text("jQuery is still working!");
});
});
- 方式三:
如果你的 jQuery 代碼塊使用符號(hào)作為變量傳遞給 ready 方法伞插。這樣就可以在函數(shù)內(nèi)使用 $ 符號(hào)了 - 而在函數(shù)外,依舊不得不使用 "jQuery":
$.noConflict();
jQuery(document).ready(function($){
$("button").click(function(){
$("p").text("jQuery is still working!");
});
});
6. 其他
1). 修改屬性
- prop() - 調(diào)整元素的屬性
2). 選擇器
3). 事件
4). 動(dòng)畫
5). HTML / CSS
6). 遍歷
7). AJAX
8). 雜項(xiàng)方法
9). 屬性
7. 插件
1). Validate
jQuery Validate 插件為表單提供了強(qiáng)大的驗(yàn)證功能盾碗,讓客戶端表單驗(yàn)證變得更簡單媚污,同時(shí)提供了大量的定制選項(xiàng),滿足應(yīng)用程序各種需求廷雅。該插件捆綁了一套有用的驗(yàn)證方法耗美,包括 URL 和電子郵件驗(yàn)證,同時(shí)提供了一個(gè)用來編寫用戶自定義方法的 API航缀。所有的捆綁方法默認(rèn)使用英語作為錯(cuò)誤信息商架,且已翻譯成其他 37 種語言。
2). Accordion
jQuery Accordion 插件用于創(chuàng)建折疊菜單芥玉。它通常與嵌套的列表蛇摸、定義列表或嵌套的 div 一起使用。選項(xiàng)用于指定結(jié)構(gòu)灿巧、激活的元素和定制的動(dòng)畫赶袄。
3). Autocomplete
Autocomplete 插件根據(jù)用戶輸入值進(jìn)行搜索和過濾揽涮,讓用戶快速找到并從預(yù)設(shè)值列表中選擇。通過給 Autocomplete 字段焦點(diǎn)或者在其中輸入字符饿肺,插件開始搜索匹配的條目并顯示供選擇的值的列表蒋困。通過輸入更多的字符,用戶可以過濾列表以獲得更好的匹配唬格。
4). Message
jQuery Message 插件允許您很容易地在一個(gè)覆蓋層顯示反饋消息家破。消息會(huì)在一段時(shí)間后自動(dòng)消失颜说,不需要單擊"確定"按鈕等购岗。用戶可以通過移動(dòng)鼠標(biāo)或點(diǎn)擊任何地方加快隱藏信息。
5). Password Validation
Password Validation(密碼驗(yàn)證)插件擴(kuò)展了 jQuery Validate 插件门粪,提供了兩種組件:
一種評(píng)價(jià)密碼的相關(guān)因素的功能:比如大小寫字母的混合情況喊积、字符(數(shù)字、特殊字符)的混合情況玄妈、長度乾吻、與用戶名的相似度(可選的)。
一種使用評(píng)價(jià)功能顯示密碼強(qiáng)度的驗(yàn)證插件自定義方法拟蜻。顯示的文本可以被本地化绎签。
6). Prettydate
Prettydate 插件為表單提供了強(qiáng)大的驗(yàn)證功能,讓客戶端表單驗(yàn)證變得更簡單酝锅,同時(shí)提供了大量的定制選項(xiàng)诡必,滿足應(yīng)用程序各種需求。該插件捆綁了一套有用的驗(yàn)證方法搔扁,包括 URL 和電子郵件驗(yàn)證爸舒,同時(shí)提供了一個(gè)用來編寫用戶自定義方法的 API。
7). Treeview
Treeview 插件用于把一個(gè)無序列表改為一個(gè)可擴(kuò)展的可折疊的樹稿蹲,有利于導(dǎo)航扭勉。該插件支持位置和基于 cookie 的持久性。