Use appendTo to Move Elements with jQuery
把元素從一個div里移到另外一個div里。
jQuery有一個appendTo()方法可以把選中的元素加到其他元素中。
比如,你想讓target4從我們的從right-well移到left-well,我們可以這樣使用:
$("#target4").appendTo("#left-well");
來試著把target2元素從left-well移到right-well中。
Clone an Element Using jQuery
除了移動元素,你還可以拷貝元素。簡單理解:移動元素就是剪切,拷貝元素就是復制。
jQuery的clone()方法可以拷貝元素。
比如,如果我想把target2從left-well拷貝到right-well,我們可以這樣寫:
$("#target2").clone().appendTo("#right-well");
你有沒有發(fā)現(xiàn)兩個jQuery方法合在一起使用了?這就叫方法鏈function chaining,使用起來很方便。
復制target5元素追加到left-well。
提示:當你點擊run tests后left-well會有兩個#target5,千萬別以為這是bug。實際上是因為編輯器中的代碼會自動執(zhí)行一次,點擊run后會再執(zhí)行一次,所以有兩個#target5。
Target the Parent of an Element Using jQuery
每個HTML元素根據(jù)繼承屬性都有父parent元素。
舉個例子,h3元素的父元素是
jQuery有一個方法叫parent(),它允許你訪問指定元素的父元素。
舉個例子:讓left-well元素的父元素parent()的背景色變成藍色。
$("#left-well").parent().css("background-color", "blue")
試試讓#target1元素的父元素的背景色變成紅色。
Target the Children of an Element Using jQuery
每個人都繼承了自己的父母的一些屬性,譬如:DNA、相貌、血型、體型等等,HTML也不例外。
許多HTML元素都有children(子元素),每個子元素都從父元素那里繼承了一些屬性。
舉個例子,每個HTML元素都是body的子元素, 你的 "jQuery Playground"h3元素是div class="container-fluid"
的子元素。
jQuery有一個方法叫children(),它允許你訪問指定元素的子元素。
舉個例子:讓left-well元素的子元素children()的文本顏色變成藍色。
$("#left-well").children().css("color", "blue")
任務:讓#right-well元素的所有子元素的文本顏色都變成橙色。
Target a Specific Child of an Element Using jQuery
你已經(jīng)看到了當用jQuery選擇器通過id屬性來選取元素的時候是多么方便,但是你不能總是寫這么整齊的id。
幸運的是,jQuery有一些另外的技巧可以達到同樣的效果。
jQuery 用CSS選擇器來選取元素,target:nth-child(n)CSS選擇器允許你按照索引順序(從1開始)選擇目標元素的所有子元素。
示例:你可以給目標元素的第三個子元素添加bounce class。
$(".target:nth-child(3)").addClass("animated bounce");
任務:確保給目標元素的第二個子元素添加animated和bounce class,你可以通過targetclass來選獲得目標元素。
Target Even Numbered Elements Using jQuery
示例:獲取class為target且索引為奇數(shù)的所有元素,并給他們添加class。
$(".target:odd").addClass("animated shake");單數(shù)選擇
記住,jQuery里的索引是從0開始的,也就是說::odd選擇第2、4、6個元素,因為target#2(索引為1),target#4(索引為3),target6(索引為5。
任務:獲取class為target且索引為偶數(shù)的所有元素,也就是target#1(索引為0),target#3(索引為2),target5(索引為4),并給它們添加class animated和shake。
$(".target:even").addClass("animated shake")偶數(shù)選擇
Use jQuery to Modify the Entire Page
我們已經(jīng)玩了這么久的jQuery游樂場,是時候結(jié)束這一節(jié)了。
我們讓整個body都有淡出效果(fadeOut):
$("body").addClass("animated fadeOut");
讓我們做一些更為激動人心的事情,給body添加class animated和hinge。