b.[attribute=value] 選取屬性值爲value的元素 $("div[title=test]")選取屬性title爲"test"的
元素
c.[attribute!=value] 不等於value
[attribute^=value] 以value開始的元素
[attribute$=value] 以value結束的元素
[attribute*=value] 含有value的元素
[attribute|=value] 選取屬性等於給定字符串或以該字符串爲前綴的元素
[attribute~=value] 選取屬性用空格分隔的值中包含一個給定值得元素
[attribute1][attribute2][attributeN]
5.子元素過濾選擇器
a.:nth-child(index/even/odd/equation) 選取每一個父元素下的第index個子元素或奇偶元素(index從1算起)
b.:first-child 選取每一個父元素的第一個子元素 $("ul li:first-child") 選取每一個
中第一個
元素
c.:last-child 選取每一個父元素的最後一個子元素
d.only-child 若是某個元素是它父元素中惟一的子元素,那麼將會被匹配。若是父元素中含有其它元素,則不會被匹配。
6.表單對象屬性過濾選擇器
a. :enable/disabled 選取全部可用/不可用元素 $("#form1 :enabled") 選取id 爲form1的表單內的全部可用/不可用元素
b. :checked 選中所被選中的元素(單選框、多選框) $("input:checked")
c. :selected 選取全部被選中的選項元素 $("select option:selected")
7. 表單選擇器
:input :text :password :radio :checkbox :submit :image :reset :button :file :hidden
二.插入節點
append() 向每一個匹配的元素內部追加內容
appendTo() 將全部匹配的元素追加到指定的元素中 $(A).appendTo(B)將A追加到B
prepend() 向每一個匹配的元素內部前置內容
prependTo() 將全部匹配的元素前置到指定的元素中
after() 在每一個匹配的元素以後插入內容
insertAfter() 將全部匹配的元素插入到指定元素的後面
before() 在每一個匹配元素以前插入內容
insertBefore() 將全部匹配的元素插入到指定的元素的前面
三.detach()和remove()同樣,也是從DOM中去掉全部匹配的元素,但detach()不會把匹配的元素從JQuery對象中刪除,於是能夠在未來再使用這些元素。 與remove()不一樣的是,全部綁定的事件、附加的數據等都會保存下來。
四.clone()複製節點後,被複制的新元素不具備任何行爲。clone(true)含義是 複製元素的同時複製元素中所綁定的事件。
五.replaceWith():將全部匹配的元素都替換成指定的HTML或者DOM元素
replaceAll():顛倒了replaceWith()的用法。
六.wrap():將某個節點用其餘元素包裹起來。
wrapAll():將全部匹配的元素用一個元素來包裹。它不一樣於wrap(),wrap()方法是將全部的元素進行單獨的包裹。
wrapInner():將每個匹配的元素的子內容(包括文本節點)用其餘結構化的標記包裹起來。
七.removeAttr():刪除元素屬性
attr():獲取屬性
八.attr("class") 獲取元素的class
addClass()追加樣式
若是給一個元素添加了多個class值,就至關於合併了它們的樣式。
若是有不一樣的class設定了同同樣式屬性,則後者覆蓋前者。
removeClass() $p.removeClass(" high another");同時移除多個
九.toggle():主要控制行爲上的重複切換,若是元素原來是隱藏的則顯示它, 若是原來是顯示的則隱藏它。
十.hasClass() 判斷元素中是否含有某個class,若是有返回true.
十一.遍歷節點
a.children():取得匹配元素的子元素集合。children()方法只考慮子元素不考慮其餘後代元素。
b.next():取得匹配元素後面緊鄰的同輩元素。
c.prev():取得匹配元素前面緊鄰的同輩元素。
d.siblings():取得匹配元素先後全部的同輩元素(除他自身)。
e.closet():取得最近的匹配元素。首先檢查當前元素是否匹配,若是匹配則直接返回元素自己。若是不匹配則 向上查找父元素,逐級向上直到找到匹配選擇器的元素。若是什麼都沒有,返回一個空的JQuery對 象。
f.find()/filter()/nextAll()
十二.$(document).ready()方法和window.onload()方法有類似的功能,可是在執行時機方面有區別。 window.onload()是在網頁中全部元素徹底加載到瀏覽器後才執行,即JavaScript此時才能夠訪問頁面中 的任何元素。而經過jQuery中的$(documnent).ready()方法註冊的事件處理程序,在DOM徹底就緒時就可 以被調用。
JavaScript的onload事件一次只能保存對一個函數的引用,它會自動用後面的函數覆蓋前面的函數,所以 不能在現有的行爲上添加新的行爲。而$(document).ready()方法會在現有的行爲上添加新的行爲。這些 行爲函數會根據註冊的順序依次執行。
十三.jQuery有兩個合成事件——hover()方法和toggle()方法。
hover(enter,leave)方法用於模擬光標懸停事件。當光標移動到元素上時,會觸發指定的第一個函數 (enter);當光標移出這個元素時,會觸發指定的第二個函數(leave)。
$(function(){
$("#panel h5.head").hover(function(){
$(this).next().show();
},function(){
$(this).next().hide();
});
});
toggle()方法用於模仿鼠標連續單擊事件。第一次單擊元素時,觸發指定的第一個函數;當再次點擊同一 元素時,則觸發指定的第二個函數。最經常使用的是切換元素的可見狀態。若是元素時可見的,單擊切換後則 爲隱藏;若是元素時隱藏的,單擊切換後則爲可見的。
十四.事件冒泡:事件會按照DOM的層次結構像水泡同樣不斷向上直至頂端。
事件對象:event
阻止事件冒泡:stopPropagation() event.stopPropagation();
十五.阻止默認行爲:網頁中的元素有本身的默認行爲,例如單擊超連接後會跳轉、單擊「提交」按鈕後表單會 提交,有時須要阻止元素的默認行爲。preventDefault()方法來阻止元素的默認行爲。return false;可實 現一樣功能。