JQ

通過jQuery,您可以選取(查詢,query)HTML元素,并對它們執行“操作”(actions)。

jQuery名稱沖突

jQuery使用$符號作為jQuery的簡介方式。

某些其他JavaScript庫中的函數(比如Prototype)同樣使用$符號。

jQuery使用名為noConflict()的方法來解決該問題。

var jq=jQuery.noConflict(),幫助您使用自己的名稱(比如jq)來代替$符號。

親自試一試

結論

由于jQuery是為處理HTML事件而特別設計的,那么當您遵循以下原則時,您的代碼會更恰當且更易維護:

?把所有jQuery代碼置于事件處理函數中

?把所有事件處理函數置于文檔就緒事件處理器中

?把jQuery代碼置于單獨的.js文件中

?如果存在名稱沖突,則重命名jQuery庫

jQuery事件

下面是jQuery中事件方法的一些例子:

Event函數

綁定函數至

$(document).ready(function)

將函數綁定到文檔的就緒事件(當文檔完成加載時)

$(selector).click(function)

觸發或將函數綁定到被選元素的點擊事件

$(selector).dblclick(function)

觸發或將函數綁定到被選元素的雙擊事件

$(selector).focus(function)

觸發或將函數綁定到被選元素的獲得焦點事件

$(selector).mouseover(function)

觸發或將函數綁定到被選元素的鼠標懸停事件

如需完整的參考手冊,請訪問我們的jQuery 事件參考手冊

jQuery效果-隱藏和顯示

?jQuery 事件

?jQuery 淡入淡出

隱藏、顯示、切換,滑動,淡入淡出,以及動畫,哇哦!

效果演示

點擊這里,隱藏/顯示面板

實例

jQuery hide()

演示一個簡單的jQuery hide()方法。

jQuery hide()

另一個hide()演示。如何隱藏部分文本。

jQuery hide()和show()

通過jQuery,您可以使用hide()和show()方法來隱藏和顯示HTML元素:

$("#hide").click(function(){

$("p").hide();

});

$("#show").click(function(){

$("p").show();

});

親自試一試

語法:

$(selector).hide(speed,callback);

$(selector).show(speed,callback);

可選的speed參數規定隱藏/顯示的速度,可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是隱藏或顯示完成后所執行的函數名稱。

下面的例子演示了帶有speed參數的hide()方法:

實例

$("button").click(function(){

$("p").hide(1000);

});

親自試一試

jQuery toggle()

通過jQuery,您可以使用toggle()方法來切換hide()和show()方法。

顯示被隱藏的元素,并隱藏已顯示的元素:

實例

$("button").click(function(){

$("p").toggle();

});

親自試一試

語法:

$(selector).toggle(speed,callback);

可選的speed參數規定隱藏/顯示的速度,可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是toggle()方法完成后所執行的函數名稱。

jQuery效果參考手冊

如需全面查閱jQuery效果,請訪問我們的jQuery 效果參考手冊

_-----------------

jQuery效果-淡入淡出

?jQuery 隱藏/顯示

?jQuery 滑動

通過jQuery,您可以實現元素的淡入淡出效果。

效果演示

點擊這里,隱藏/顯示面板

實例

jQuery fadeIn()

演示jQuery fadeIn()方法。

jQuery fadeOut()

演示jQuery fadeOut()方法。

jQuery fadeToggle()

演示jQuery fadeToggle()方法。

jQuery fadeTo()

演示jQuery fadeTo()方法。

jQuery Fading方法

通過jQuery,您可以實現元素的淡入淡出效果。

jQuery擁有下面四種fade方法:

?fadeIn()

?fadeOut()

?fadeToggle()

?fadeTo()

jQuery fadeIn()方法

jQuery fadeIn()用于淡入已隱藏的元素。

語法:

$(selector).fadeIn(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是fading完成后所執行的函數名稱。

下面的例子演示了帶有不同參數的fadeIn()方法:

實例

$("button").click(function(){

$("#div1").fadeIn();

$("#div2").fadeIn("slow");

$("#div3").fadeIn(3000);

});

親自試一試

jQuery fadeOut()方法

jQuery fadeOut()方法用于淡出可見元素。

語法:

$(selector).fadeOut(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是fading完成后所執行的函數名稱。

下面的例子演示了帶有不同參數的fadeOut()方法:

實例

$("button").click(function(){

$("#div1").fadeOut();

$("#div2").fadeOut("slow");

$("#div3").fadeOut(3000);

});

親自試一試

jQuery fadeToggle()方法

jQuery fadeToggle()方法可以在fadeIn()與fadeOut()方法之間進行切換。

如果元素已淡出,則fadeToggle()會向元素添加淡入效果。

如果元素已淡入,則fadeToggle()會向元素添加淡出效果。

語法:

$(selector).fadeToggle(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是fading完成后所執行的函數名稱。

下面的例子演示了帶有不同參數的fadeToggle()方法:

實例

$("button").click(function(){

$("#div1").fadeToggle();

$("#div2").fadeToggle("slow");

$("#div3").fadeToggle(3000);

});

親自試一試

jQuery fadeTo()方法

jQuery fadeTo()方法允許漸變為給定的不透明度(值介于0與1之間)。

語法:

$(selector).fadeTo(speed,opacity,callback);

必需的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

fadeTo()方法中必需的opacity參數將淡入淡出效果設置為給定的不透明度(值介于0與1之間)。

可選的callback參數是該函數完成后所執行的函數名稱。

下面的例子演示了帶有不同參數的fadeTo()方法:

實例

$("button").click(function(){

$("#div1").fadeTo("slow",0.15);

$("#div2").fadeTo("slow",0.4);

$("#div3").fadeTo("slow",0.7);

});

親自試一試

jQuery效果參考手冊

如需全面查閱jQuery效果,請訪問我們的jQuery 效果參考手冊

----------------

jQuery效果-滑動

?jQuery 淡入淡出

?jQuery 動畫

jQuery滑動方法可使元素上下滑動。

效果演示

點擊這里,隱藏/顯示面板

實例

jQuery slideDown()

演示jQuery slideDown()方法。

jQuery slideUp()

演示jQuery slideUp()方法。

jQuery slideToggle()

演示jQuery slideToggle()方法。

jQuery滑動方法

通過jQuery,您可以在元素上創建滑動效果。

jQuery擁有以下滑動方法:

?slideDown()

?slideUp()

?slideToggle()

jQuery slideDown()方法

jQuery slideDown()方法用于向下滑動元素。

語法:

$(selector).slideDown(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是滑動完成后所執行的函數名稱。

下面的例子演示了slideDown()方法:

實例

$("#flip").click(function(){

$("#panel").slideDown();

});

親自試一試

jQuery slideUp()方法

jQuery slideUp()方法用于向上滑動元素。

語法:

$(selector).slideUp(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是滑動完成后所執行的函數名稱。

下面的例子演示了slideUp()方法:

實例

$("#flip").click(function(){

$("#panel").slideUp();

});

親自試一試

jQuery slideToggle()方法

jQuery slideToggle()方法可以在slideDown()與slideUp()方法之間進行切換。

如果元素向下滑動,則slideToggle()可向上滑動它們。

如果元素向上滑動,則slideToggle()可向下滑動它們。

$(selector).slideToggle(speed,callback);

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是滑動完成后所執行的函數名稱。

下面的例子演示了slideToggle()方法:

實例

$("#flip").click(function(){

$("#panel").slideToggle();

});

親自試一試

jQuery效果參考手冊

如需全面查閱jQuery效果,請訪問我們的jQuery 效果參考手冊

__------------------------

jQuery效果-動畫

?jQuery 滑動

?jQuery stop()

jQuery animate()方法允許您創建自定義的動畫。

效果演示

開始動畫

jQuery

jQuery動畫- animate()方法

jQuery animate()方法用于創建自定義動畫。

語法:

$(selector).animate({params},speed,callback);

必需的params參數定義形成動畫的CSS屬性。

可選的speed參數規定效果的時長。它可以取以下值:"slow"、"fast"或毫秒。

可選的callback參數是動畫完成后所執行的函數名稱。

下面的例子演示animate()方法的簡單應用;它把

元素移動到左邊,直到left屬性等于250像素為止:

實例

$("button").click(function(){

$("div").animate({left:'250px'});

});

親自試一試

提示:默認地,所有HTML元素都有一個靜態位置,且無法移動。

如需對位置進行操作,要記得首先把元素的CSS position屬性設置為relative、fixed或absolute!

jQuery animate() -操作多個屬性

請注意,生成動畫的過程中可同時使用多個屬性:

實例

$("button").click(function(){

$("div").animate({

left:'250px',

opacity:'0.5',

height:'150px',

width:'150px'

});

});

親自試一試

提示:可以用animate()方法來操作所有CSS屬性嗎?

是的,幾乎可以!不過,需要記住一件重要的事情:當使用animate()時,必須使用Camel標記法書寫所有的屬性名,比如,必須使用paddingLeft而不是padding-left,使用marginRight而不是margin-right,等等。

同時,色彩動畫并不包含在核心jQuery庫中。

如果需要生成顏色動畫,您需要從jQuery.com下載Color Animations插件。

jQuery animate() -使用相對值

也可以定義相對值(該值相對于元素的當前值)。需要在值的前面加上+=或-=:

實例

$("button").click(function(){

$("div").animate({

left:'250px',

height:'+=150px',

width:'+=150px'

});

});

親自試一試

jQuery animate() -使用預定義的值

您甚至可以把屬性的動畫值設置為"show"、"hide"或"toggle":

實例

$("button").click(function(){

$("div").animate({

height:'toggle'

});

});

親自試一試

jQuery animate() -使用隊列功能

默認地,jQuery提供針對動畫的隊列功能。

這意味著如果您在彼此之后編寫多個animate()調用,jQuery會創建包含這些方法調用的“內部”隊列。然后逐一運行這些animate調用。

實例1

隱藏,如果您希望在彼此之后執行不同的動畫,那么我們要利用隊列功能:

$("button").click(function(){

vardiv=$("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");

});

親自試一試

實例2

下面的例子把

元素移動到右邊,然后增加文本的字號:

$("button").click(function(){

vardiv=$("div");

div.animate({left:'100px'},"slow");

div.animate({fontSize:'3em'},"slow");

});

親自試一試

jQuery停止動畫

?jQuery 動畫

?jQuery Callback

jQuery stop()方法用于在動畫或效果完成前對它們進行停止。

效果演示

停止滑動

點擊這里,向上/向下滑動面板

實例

jQuery stop() 滑動

演示jQuery stop()方法。

jQuery stop() 動畫(帶有參數)

演示jQuery stop()方法。

jQuery stop()方法

jQuery stop()方法用于停止動畫或效果,在它們完成之前。

stop()方法適用于所有jQuery效果函數,包括滑動、淡入淡出和自定義動畫。

語法

$(selector).stop(stopAll,goToEnd);

可選的stopAll參數規定是否應該清除動畫隊列。默認是false,即僅停止活動的動畫,允許任何排入隊列的動畫向后執行。

可選的goToEnd參數規定是否立即完成當前動畫。默認是false。

因此,默認地,stop()會清除在被選元素上指定的當前動畫。

下面的例子演示stop()方法,不帶參數:

實例

$("#stop").click(function(){

$("#panel").stop();

});

親自試一試

jQuery效果參考手冊

如需全面查閱jQuery效果,請訪問我們的jQuery 效果參考手冊

jQuery Callback函數

?jQuery stop()

?jQuery Chaining

Callback函數在當前動畫100%完成之后執行。

jQuery動畫的問題

許多jQuery函數涉及動畫。這些函數也許會將speedduration作為可選參數。

例子:$("p").hide("slow")

speedduration參數可以設置許多不同的值,比如"slow", "fast", "normal"或毫秒。

實例

$("button").click(function(){

$("p").hide(1000);

});

親自試一試

由于JavaScript語句(指令)是逐一執行的-按照次序,動畫之后的語句可能會產生錯誤或頁面沖突,因為動畫還沒有完成。

為了避免這個情況,您可以以參數的形式添加Callback函數。

jQuery Callback函數

當動畫100%完成后,即調用Callback函數。

典型的語法:

$(selector).hide(speed,callback)

callback參數是一個在hide操作完成后被執行的函數。

錯誤(沒有callback

$("p").hide(1000);

alert("The paragraph is now hidden");

親自試一試13

正確(有callback

$("p").hide(1000,function(){

alert("The paragraph is now hidden");

});

親自試一試

結論:如果您希望在一個涉及動畫的函數之后來執行語句,請使用callback函數。

jQuery - Chaining

?jQuery Callback

?jQuery 獲取

通過jQuery,您可以把動作/方法鏈接起來。

Chaining允許我們在一條語句中允許多個jQuery方法(在相同的元素上)。

jQuery方法鏈接

直到現在,我們都是一次寫一條jQuery語句(一條接著另一條)。

不過,有一種名為鏈接(chaining)的技術,允許我們在相同的元素上運行多條jQuery命令,一條接著另一條。

提示:這樣的話,瀏覽器就不必多次查找相同的元素。

如需鏈接一個動作,您只需簡單地把該動作追加到之前的動作上。

例子1

下面的例子把css(), slideUp(), and slideDown()鏈接在一起。"p1"元素首先會變為紅色,然后向上滑動,然后向下滑動:

$("#p1").css("color","red").slideUp(2000).slideDown(2000);

親自試一試

如果需要,我們也可以添加多個方法調用。

提示:當進行鏈接時,代碼行會變得很差。不過,jQuery在語法上不是很嚴格;您可以按照希望的格式來寫,包含折行和縮進。

例子2

這樣寫也可以運行:

$("#p1").css("color","red")

.slideUp(2000)

.slideDown(2000);

親自試一試

jQuery會拋掉多余的空格,并按照一行長代碼來執行上面的代碼行。

---0----------------------

jQuery -獲得內容和屬性

?jQuery Chaining

?jQuery 設置

jQuery擁有可操作HTML元素和屬性的強大方法。

jQuery DOM操作

jQuery中非常重要的部分,就是操作DOM的能力。

jQuery提供一系列與DOM相關的方法,這使訪問和操作元素和屬性變得很容易。

提示:DOM = Document Object Model(文檔對象模型)

DOM定義訪問HTML和XML文檔的標準:

“W3C文檔對象模型獨立于平臺和語言的界面,允許程序和腳本動態訪問和更新文檔的內容、結構以及樣式。”

獲得內容- text()、html()以及val()

三個簡單實用的用于DOM操作的jQuery方法:

?text() -設置或返回所選元素的文本內容

?html() -設置或返回所選元素的內容(包括HTML標記)

?val() -設置或返回表單字段的值

下面的例子演示如何通過jQuery text()和html()方法來獲得內容:

實例

$("#btn1").click(function(){

alert("Text: " + $("#test").text());

});

$("#btn2").click(function(){

alert("HTML:" + $("#test").html());

});

親自試一試

下面的例子演示如何通過jQuery val()方法獲得輸入字段的值:

實例

$("#btn1").click(function(){

alert("Value: " + $("#test").val());

});

親自試一試

獲取屬性- attr()

jQuery attr()方法用于獲取屬性值。

下面的例子演示如何獲得鏈接中href屬性的值:

實例

$("button").click(function(){

alert($("#w3s").attr("href"));

});

親自試一試

下一章會講解如何設置(改變)內容和屬性值。

jQuery HTML參考手冊

如需有關jQuery HTML方法的完整內容,請訪問以下參考手冊:

?jQuery 文檔操作

?jQuery 屬性操作

?jQuery CSS 操作

jQuery -設置內容和屬性

?jQuery 獲取

?jQuery 添加

設置內容- text()、html()以及val()

我們將使用前一章中的三個相同的方法來設置內容:

?text() -設置或返回所選元素的文本內容

?html() -設置或返回所選元素的內容(包括HTML標記)

?val() -設置或返回表單字段的值

下面的例子演示如何通過text()、html()以及val()方法來設置內容:

實例

$("#btn1").click(function(){

$("#test1").text("Hello world!");

});

$("#btn2").click(function(){

$("#test2").html("Hello world!");

});

$("#btn3").click(function(){

$("#test3").val("Dolly Duck");

});

親自試一試

text()、html()以及val()的回調函數

上面的三個jQuery方法:text()、html()以及val(),同樣擁有回調函數。回調函數由兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然后以函數新值返回您希望使用的字符串。

下面的例子演示帶有回調函數的text()和html():

實例

$("#btn1").click(function(){

$("#test1").text(function(i,origText){

return"Old text: " + origText + " New text: Hello world!

(index: " + i + ")";

});

});

$("#btn2").click(function(){

$("#test2").html(function(i,origText){

return"Old html: " + origText + " New html: Helloworld!

(index: " + i + ")";

});

});

親自試一試

設置屬性- attr()

jQuery attr()方法也用于設置/改變屬性值。

下面的例子演示如何改變(設置)鏈接中href屬性的值:

實例

$("button").click(function(){

$("#w3s").attr("href","http://www.w3school.com.cn/jquery");

});

親自試一試

attr()方法也允許您同時設置多個屬性。

下面的例子演示如何同時設置href和title屬性:

實例

$("button").click(function(){

$("#w3s").attr({

"href" : "http://www.w3school.com.cn/jquery",

"title" : "W3School jQuery Tutorial"

});

});

親自試一試

attr()的回調函數

jQuery方法attr(),也提供回調函數。回調函數由兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然后以函數新值返回您希望使用的字符串。

下面的例子演示帶有回調函數的attr()方法:

實例

$("button").click(function(){

$("#w3s").attr("href", function(i,origValue){

returnorigValue + "/jquery";

});

});

親自試一試

jQuery HTML參考手冊

如需有關jQuery HTML方法的完整內容,請訪問以下參考手冊:

?jQuery 文檔操作

?jQuery 屬性操作

?jQuery CSS 操作

jQuery -添加元素

?jQuery 設置

?jQuery 刪除

通過jQuery,可以很容易地添加新元素/內容。

添加新的HTML內容

我們將學習用于添加新內容的四個jQuery方法:

?append() -在被選元素的結尾插入內容

?prepend() -在被選元素的開頭插入內容

?after() -在被選元素之后插入內容

?before() -在被選元素之前插入內容

jQuery append()方法

jQuery append()方法在被選元素的結尾插入內容。

實例

$("p").append("Some appended text.");

親自試一試

jQuery prepend()方法

jQuery prepend()方法在被選元素的開頭插入內容。

實例

$("p").prepend("Some prependedtext.");

親自試一試

通過append()和prepend()方法添加若干新元素

在上面的例子中,我們只在被選元素的開頭/結尾插入文本/HTML。

不過,append()和prepend()方法能夠通過參數接收無限數量的新元素。可以通過jQuery來生成文本/HTML(就像上面的例子那樣),或者通過JavaScript代碼和DOM元素。

在下面的例子中,我們創建若干個新元素。這些元素可以通過text/HTML、jQuery或者JavaScript/DOM來創建。然后我們通過append()方法把這些新元素追加到文本中(對prepend()同樣有效):

實例

function appendText()

{

vartxt1="

Text.

";//以HTML創建新元素

vartxt2=$("").text("Text.");//以jQuery創建新元素

vartxt3=document.createElement("p");//以DOM創建新元素

txt3.innerHTML="Text.";

$("p").append(txt1,txt2,txt3);//追加新元素

}

親自試一試

jQuery after()和before()方法

jQuery after()方法在被選元素之后插入內容。

jQuery before()方法在被選元素之前插入內容。

實例

$("img").after("Some textafter");

$("img").before("Some textbefore");

親自試一試

通過after()和before()方法添加若干新元素

after()和before()方法能夠通過參數接收無限數量的新元素。可以通過text/HTML、jQuery或者JavaScript/DOM來創建新元素。

在下面的例子中,我們創建若干新元素。這些元素可以通過text/HTML、jQuery或者JavaScript/DOM來創建。然后我們通過after()方法把這些新元素插到文本中(對before()同樣有效):

實例

function afterText()

{

var txt1="I ";//以HTML創建新元素

vartxt2=$("").text("love ");//通過jQuery創建新元素

vartxt3=document.createElement("big");//通過DOM創建新元素

txt3.innerHTML="jQuery!";

$("img").after(txt1,txt2,txt3);//在img之后插入新元素

}

親自試一試

jQuery HTML參考手冊

如需有關jQuery HTML方法的完整內容,請訪問以下參考手冊:

?jQuery 文檔操作

?jQuery 屬性操作

?jQuery CSS 操作

jQuery -刪除元素

?jQuery 添加

?jQuery CSS 類

通過jQuery,可以很容易地刪除已有的HTML元素。

刪除元素/內容

如需刪除元素和內容,一般可使用以下兩個jQuery方法:

?remove() -刪除被選元素(及其子元素)

?empty() -從被選元素中刪除子元素

jQuery remove()方法

jQuery remove()方法刪除被選元素及其子元素。

實例

$("#div1").remove();

親自試一試

jQuery empty()方法

jQuery empty()方法刪除被選元素的子元素。

實例

$("#div1").empty();

親自試一試

過濾被刪除的元素

jQuery remove()方法也可接受一個參數,允許您對被刪元素進行過濾。

該參數可以是任何jQuery選擇器的語法。

下面的例子刪除class="italic"的所有

元素:

實例

$("p").remove(".italic");

親自試一試

jQuery HTML參考手冊

如需有關jQuery HTML方法的完整內容,請訪問以下參考手冊:

?jQuery 文檔操作

?jQuery 屬性操作

?jQuery CSS 操作

jQuery -獲取并設置CSS類

?jQuery 刪除

?jQuery css()

通過jQuery,可以很容易地對CSS元素進行操作。

切換類

jQuery操作CSS

jQuery擁有若干進行CSS操作的方法。我們將學習下面這些:

?addClass() -向被選元素添加一個或多個類

?removeClass() -從被選元素刪除一個或多個類

?toggleClass() -對被選元素進行添加/刪除類的切換操作

?css() -設置或返回樣式屬性

實例樣式表

下面的樣式表將用于本頁的所有例子:

.important

{

font-weight:bold;

font-size:xx-large;

}

.blue

{

color:blue;

}

jQuery addClass()方法

下面的例子展示如何向不同的元素添加class屬性。當然,在添加類時,您也可以選取多個元素:

實例

$("button").click(function(){

$("h1,h2,p").addClass("blue");

$("div").addClass("important");

});

親自試一試

您也可以在addClass()方法中規定多個類:

實例

$("button").click(function(){

$("#div1").addClass("important blue");

});

親自試一試

jQuery removeClass()方法

下面的例子演示如何不同的元素中刪除指定的class屬性:

實例

$("button").click(function(){

$("h1,h2,p").removeClass("blue");

});

親自試一試

jQuery toggleClass()方法

下面的例子將展示如何使用jQuery toggleClass()方法。該方法對被選元素進行添加/刪除類的切換操作:

實例

$("button").click(function(){

$("h1,h2,p").toggleClass("blue");

});

親自試一試

jQuery css()方法

我們將在下一章講解jQuery css()方法。

jQuery HTML參考手冊

如需有關jQuery CSS方法的完整內容,請訪問我們的jQuery CSS 操作參考手冊

jQuery - css()方法

?jQuery CSS 類

?jQuery 尺寸

jQuery css()方法

css()方法設置或返回被選元素的一個或多個樣式屬性。

返回CSS屬性

如需返回指定的CSS屬性的值,請使用如下語法:

css("propertyname");

下面的例子將返回首個匹配元素的background-color值:

實例

$("p").css("background-color");

親自試一試

設置CSS屬性

如需設置指定的CSS屬性,請使用如下語法:

css("propertyname","value");

下面的例子將為所有匹配元素設置background-color值:

實例

$("p").css("background-color","yellow");

親自試一試

設置多個CSS屬性

如需設置多個CSS屬性,請使用如下語法:

css({"propertyname":"value","propertyname":"value",...});

下面的例子將為所有匹配元素設置background-color和font-size:

實例

$("p").css({"background-color":"yellow","font-size":"200%"});

親自試一試

jQuery HTML參考手冊

如需有關jQuery CSS方法的完整內容,請訪問我們的jQuery CSS 操作參考手冊

jQuery -尺寸

?jQuery css()

?jQuery 遍歷

通過jQuery,很容易處理元素和瀏覽器窗口的尺寸。

jQuery尺寸 方法

jQuery提供多個處理尺寸的重要方法:

?width()

?height()

?innerWidth()

?innerHeight()

?outerWidth()

?outerHeight()

jQuery width()和height()方法

width()方法設置或返回元素的寬度(不包括內邊距、邊框或外邊距)。

height()方法設置或返回元素的高度(不包括內邊距、邊框或外邊距)。

下面的例子返回指定的

元素的寬度和高度:

實例

$("button").click(function(){

vartxt="";

txt+="Width: " + $("#div1").width() +"
";

txt+="Height: " + $("#div1").height();

$("#div1").html(txt);

});

親自試一試

jQuery innerWidth()和innerHeight()方法

innerWidth()方法返回元素的寬度(包括內邊距)。

innerHeight()方法返回元素的高度(包括內邊距)。

下面的例子返回指定的

元素的inner-width/height:

實例

$("button").click(function(){

vartxt="";

txt+="Inner width: " + $("#div1").innerWidth() +"
";

txt+="Inner height: " + $("#div1").innerHeight();

$("#div1").html(txt);

});

親自試一試

jQuery outerWidth()和outerHeight()方法

outerWidth()方法返回元素的寬度(包括內邊距和邊框)。

outerHeight()方法返回元素的高度(包括內邊距和邊框)。

下面的例子返回指定的

元素的outer-width/height:

實例

$("button").click(function(){

vartxt="";

txt+="Outer width: " + $("#div1").outerWidth() +"
";

txt+="Outer height: " + $("#div1").outerHeight();

$("#div1").html(txt);

});

親自試一試

outerWidth(true)方法返回元素的寬度(包括內邊距、邊框和外邊距)。

outerHeight(true)方法返回元素的高度(包括內邊距、邊框和外邊距)。

實例

$("button").click(function(){

vartxt="";

txt+="Outer width (+margin): " +$("#div1").outerWidth(true) + "
";

txt+="Outer height (+margin): " + $("#div1").outerHeight(true);

$("#div1").html(txt);

});

親自試一試

jQuery -更多的width()和height()

下面的例子返回文檔(HTML文檔)和窗口(瀏覽器視口)的寬度和高度:

實例

$("button").click(function(){

vartxt="";

txt+="Document width/height: " + $(document).width();

txt+="x" + $(document).height() + "\n";

txt+="Window width/height: " + $(window).width();

txt+="x" + $(window).height();

alert(txt);

});

親自試一試

下面的例子設置指定的

元素的寬度和高度:

實例

$("button").click(function(){

$("#div1").width(500).height(500);

});

親自試一試

jQuery CSS參考手冊

如需關于jQuery Dimensions的完整參考,請訪問我們的jQuery尺寸參考手冊。

jQuery遍歷

?jQuery 尺寸

?jQuery 祖先

什么是遍歷?

jQuery遍歷,意為“移動”,用于根據其相對于其他元素的關系來“查找”(或選取)HTML元素。以某項選擇開始,并沿著這個選擇移動,直到抵達您期望的元素為止。

下圖展示了一個家族樹。通過jQuery遍歷,您能夠從被選(當前的)元素開始,輕松地在家族樹中向上移動(祖先),向下移動(子孫),水平移動(同胞)。這種移動被稱為對DOM進行遍歷。

圖示解釋:

?

元素是

的父元素,同時是其中所有內容的祖先。

?

元素是

元素的父元素,同時是

的子元素

?左邊的

元素是的父元素,

的子元素,同時是

的后代。

?元素是

的子元素,同時是

的后代。

?兩個

元素是同胞(擁有相同的父元素)。

?右邊的

元素是

的父元素,

的子元素,同時是

的后代。

?元素是右邊的

的子元素,同時是

的后代。

提示:祖先是父、祖父、曾祖父等等。后代是子、孫、曾孫等等。同胞擁有相同的父。

遍歷DOM

jQuery提供了多種遍歷DOM的方法。

遍歷方法中最大的種類是樹遍歷(tree-traversal)。

下一章會講解如何在DOM樹中向上、下以及同級移動。

jQuery遍歷參考手冊

如需了解所有的jQuery遍歷方法,請訪問我們的jQuery 遍歷參考手冊

jQuery遍歷-祖先

?jQuery 遍歷

?jQuery 后代

祖先是父、祖父或曾祖父等等。

通過jQuery,您能夠向上遍歷DOM樹,以查找元素的祖先。

向上遍歷DOM樹

這些jQuery方法很有用,它們用于向上遍歷DOM樹:

?parent()

?parents()

?parentsUntil()

jQuery parent()方法

parent()方法返回被選元素的直接父元素。

該方法只會向上一級對DOM樹進行遍歷。

下面的例子返回每個元素的的直接父元素:

實例

$(document).ready(function(){

$("span").parent();

});

親自試一試

jQuery parents()方法

parents()方法返回被選元素的所有祖先元素,它一路向上直到文檔的根元素()。

下面的例子返回所有元素的所有祖先:

實例

$(document).ready(function(){

$("span").parents();

});

親自試一試

您也可以使用可選參數來過濾對祖先元素的搜索。

下面的例子返回所有元素的所有祖先,并且它是

元素:

實例

$(document).ready(function(){

$("span").parents("ul");

});

親自試一試

jQuery parentsUntil()方法

parentsUntil()方法返回介于兩個給定元素之間的所有祖先元素。

下面的例子返回介于與

元素之間的所有祖先元素:

實例

$(document).ready(function(){

$("span").parentsUntil("div");

});

親自試一試

jQuery遍歷參考手冊

如需了解所有的jQuery遍歷方法,請訪問我們的jQuery 遍歷參考手冊

jQuery遍歷-后代

?jQuery 祖先

?jQuery 同胞

后代是子、孫、曾孫等等。

通過jQuery,您能夠向下遍歷DOM樹,以查找元素的后代。

向下遍歷DOM樹

下面是兩個用于向下遍歷DOM樹的jQuery方法:

?children()

?find()

jQuery children()方法

children()方法返回被選元素的所有直接子元素。

該方法只會向下一級對DOM樹進行遍歷。

下面的例子返回每個

元素的所有直接子元素:

實例

$(document).ready(function(){

$("div").children();

});

親自試一試

您也可以使用可選參數來過濾對子元素的搜索。

下面的例子返回類名為"1"的所有

元素,并且它們是

的直接子元素:

實例

$(document).ready(function(){

$("div").children("p.1");

});

親自試一試

jQuery find()方法

find()方法返回被選元素的后代元素,一路向下直到最后一個后代。

下面的例子返回屬于

后代的所有元素:

實例

$(document).ready(function(){

$("div").find("span");

});

親自試一試

下面的例子返回

的所有后代:

實例

$(document).ready(function(){

$("div").find("*");

});

親自試一試

jQuery遍歷參考手冊

如需了解所有的jQuery遍歷方法,請訪問我們的jQuery 遍歷參考手冊

jQuery遍歷-同胞

?jQuery 后代

?jQuery 過濾

同胞擁有相同的父元素。

通過jQuery,您能夠在DOM樹中遍歷元素的同胞元素。

在DOM樹中水平遍歷

有許多有用的方法讓我們在DOM樹進行水平遍歷:

?siblings()

?next()

?nextAll()

?nextUntil()

?prev()

?prevAll()

?prevUntil()

jQuery siblings()方法

siblings()方法返回被選元素的所有同胞元素。

下面的例子返回

的所有同胞元素:

實例

$(document).ready(function(){

$("h2").siblings();

});

親自試一試

您也可以使用可選參數來過濾對同胞元素的搜索。

下面的例子返回屬于

的同胞元素的所有

元素:

實例

$(document).ready(function(){

$("h2").siblings("p");

});

親自試一試

jQuery next()方法

next()方法返回被選元素的下一個同胞元素。

該方法只返回一個元素。

下面的例子返回

的下一個同胞元素:

實例

$(document).ready(function(){

$("h2").next();

});

親自試一試

jQuery nextAll()方法

nextAll()方法返回被選元素的所有跟隨的同胞元素。

下面的例子返回

的所有跟隨的同胞元素:

實例

$(document).ready(function(){

$("h2").nextAll();

});

親自試一試

jQuery nextUntil()方法

nextUntil()方法返回介于兩個給定參數之間的所有跟隨的同胞元素。

下面的例子返回介于

元素之間的所有同胞元素:

實例

$(document).ready(function(){

$("h2").nextUntil("h6");

});

親自試一試

jQuery prev(), prevAll() &

prevUntil()方法

prev(), prevAll()以及prevUntil()方法的工作方式與上面的方法類似,只不過方向相反而已:它們返回的是前面的同胞元素(在DOM樹中沿著同胞元素向后遍歷,而不是向前)。

jQuery遍歷參考手冊

如需了解所有的jQuery遍歷方法,請訪問我們的jQuery 遍歷參考手冊

jQuery遍歷-過濾

?jQuery 同胞

?jQuery AJAX 簡介

縮寫搜索元素的范圍

三個最基本的過濾方法是:first(), last()和eq(),它們允許您基于其在一組元素中的位置來選擇一個特定的元素。

其他過濾方法,比如filter()和not()允許您選取匹配或不匹配某項指定標準的元素。

jQuery first()方法

first()方法返回被選元素的首個元素。

下面的例子選取首個

元素內部的第一個

元素:

實例

$(document).ready(function(){

$("div p").first();

});

親自試一試

jQuery last()方法

last()方法返回被選元素的最后一個元素。

下面的例子選擇最后一個

元素中的最后一個

元素:

實例

$(document).ready(function(){

$("div p").last();

});

親自試一試

jQuery eq()方法

eq()方法返回被選元素中帶有指定索引號的元素。

索引號從0開始,因此首個元素的索引號是0而不是1。下面的例子選取第二個

元素(索引號1):

實例

$(document).ready(function(){

$("p").eq(1);

});

親自試一試

jQuery filter()方法

filter()方法允許您規定一個標準。不匹配這個標準的元素會被從集合中刪除,匹配的元素會被返回。

下面的例子返回帶有類名"intro"的所有

元素:

實例

$(document).ready(function(){

$("p").filter(".intro");

});

親自試一試

jQuery not()方法

not()方法返回不匹配標準的所有元素。

提示:not()方法與filter()相反。

下面的例子返回不帶有類名"intro"的所有

元素:

實例

$(document).ready(function(){

$("p").not(".intro");

});

親自試一試

jQuery遍歷參考手冊

如需了解所有的jQuery遍歷方法,請訪問我們的jQuery 遍歷參考手冊

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容