Jquery的一些基礎知識記錄 主要關於選擇器

2021-05-27 11:23:23 字數 4191 閱讀 5733

(1)原生js要給偶數序列li註冊事件的話,可以 用i%2,因為除2取餘數為0的話,一般都是偶數,偶數序列,便是奇數行。

(2),結束標籤不能忘記。

(3):empty,不包含子元素或者文字為空的元素。要將文字看成一種子元素。由此:parent的時候,不一定需要表面形式的子元素,自己有文字元素也可。如我們是孩子

(4):hidden,包括三種,display為none的,visibility為hidden的,以及input type為hidden的。(普通js是選擇不到display為none的元素的)。注意hidden要和disabled區別開,前者是隱藏,後者是禁用。

(5)屬性選擇器就是帶中括號,而且還可以組合選擇,如$(" div[id][title$='test'] "),這裡指擁有屬性id,並且屬性title的值以test結束的div元素。注意屬性值的引號可以省略,如$(" div[id][title$=test] ")。

(6)這是乙個文字input框,不能通過$("text")選擇到,還需要在text前面加乙個冒號,即$(":text"),姑且稱呼為屬性值選擇法,這裡要明白,其實text並不是乙個元素,而僅僅是乙個元素的屬性對應的值,所以它沒有元素選擇那樣的方式,所以前加個冒號相區別,同時我們也可用屬性選擇器的方式選擇,兩者作用等價。如:$("input[type='text']"),注意裡頭的text需要引號,而且是單引號。

(7)選擇被選中的checkbox,可以用$("input:checked"),也可以用$(":checkbox:checked"),即可以用大的input來引用,也可以用小的具體的input型別來引用。甚至也可借鑑第6條,用屬性值選擇法,checked就是個屬性,於是可以$(":checked")來選擇,別忘記前面的冒號。

注意select下拉框,如果要選擇被選中的項,可用$(":selected")這個辦法(屬性值選擇法),但用$("select:selected")就不行,因為這裡少了個空格,select和option是有上下級關係的,改為$("select :selected")就正確啦,$("input:checked")之所以不需要空格,是因為checkbox就寫在input裡(),不存在所謂上下級關係。還可以$("option:selected")。

(8)計算個數是用length,而非其它,可能會誤以為length是長度,其實不是。如$("select:selected").length可以計算下拉列表中option被選擇的個數。

(9)$(":input")這個是最特殊的乙個,因為如果是$("input")的話只會選擇到input,就選擇不到select,textarea,button等元素,而如果前面加了冒號,則不僅僅可以選擇到input系列,還可以選擇select,textarea,button等元素。

(10)注意選取表單中不可用元素,是$("#form1 :enabled"),這裡form的id是form1,然後form與input或者其它具體的表單有上下級關係,所以中間有空格,不能忘記。不要寫成$("#form1:enabled")。

(11):even是想選擇奇數的元素,所以索引值是偶數。反之。

(12)div:first選擇第乙個,作用等價於div:eq(0)。div:gt:(3)索引值大於3,div:lt(3)索引值小於3。

(13):animated,選擇正在動的元素,呵呵,不會是讓他馬上停下來,前面有動車吧

(14)not一定要加個括號,如div:not(.f),所有的div中class值不為f的。

(15):header選擇到標題元素。

(16)ul li是選擇ul裡所有的子li,而ul>li是選擇ul的直接li子元素,因為可能li又會包含ul,li,所以後代的li並不在ul+li的選擇範疇裡。

(17)ul+p,選擇ul後面的p元素,注意要緊挨著的第乙個,而且ul和p是同級關係,如ul+li這樣就不合適,因為有上下層關係。$("#f+p"),不要寫成$("#f")+p。next(  )方法可以替代,變成$("#f").next(  )。next(  )方法的對應方法是prev(  )

(18)ul~p,也是同級的,也是後面的,但是選擇後面所有的,不僅僅指第乙個。可以用nextall(  )來替代。

(19)$("#f").siblings(  ),這個方法可以選擇id為f的前後所有兄弟姐妹,是對nextall(  )的補充。

(20)$("div:contains('我')"),$("div:has(p)"),注意前面包含文字的話要加引號,而後面包含元素的話不需要加引號。

(21)$(div[title*='test']),這個蠻好用,但不知道屬性值具體的內容時,加個星號,只要匹配到其中一部分內容就okay。

(22)還是要注意$("input:checked")和$("select :selected"),前面沒空格,後者有空格,前者沒上下級關係,後者其實是在給select的option子元素,所以需要空格表示上下級。

(23) $("#f").css("color","red").hide(1000).show(1000).hide(1000).show(1000);還可以這樣玩,哈哈,, hide也可以帶時間,同時hide和show可以互動出現通過鏈操作。

(24)ul li:eq(0)與ul li:first-child乍一看好象沒區別,但是如果有多個ul的時候,前者只給第乙個ul的第乙個li加效果,而後者給所有的ul的第乙個li加效果。

要注意:nth-chilid(index)的index是從1開始算的,而eq是從0起算的,所以:nth-chilid(1)相當於:eq(0),如果只有乙個ul的話。

(25)even代表偶數,odd代表奇數。。裡頭有d,所以「單」。$("p:odd").css("color","red"),是選擇索引值為單數的,於是實際選擇到的是偶數行,第2個,第4個。

(26)注意ul li:even選擇所有的偶數li,而ul li:nth-child(even),所以要注意兩者形式的區別,前者放於冒號後,後者放於括號內。

(27)如果屬性值裡有「#,[  ]」等特殊符號,用選擇器選擇的時候要用「\\」兩個斜槓進行轉義,否則會出錯。如$("#id\\#b"),這個元素的id=id#b,所以需要轉義。

(28)addclass的class的c要大寫c,記得。

(29)有很多個li,要挑出其中幾個,而且希望是按照li包含的內容挑,這個時候可以用contain,而且是要對他們進行一次性操作,於是挑完後還要將它們放入乙個集合中,於是要用到filter方法。

如:$("ul li").filter(":contains('蘋果'),:contains(佳能'),:contains('谷歌')");相當於正則裡頭的(),進行組合

(30)選擇可見元素是,$("div:visible"),如果要寫個語句,當元素可見時乾某個事情的時候,則if($("#f").is(":visiable"))

格式是:if(***.is(" "))

(31)忘記原生js,直接就沒有類選擇器,而jquery用得很普遍。

(32)$相當於jquery,第二個字母q大寫。

(33)$("input")和$(":input")是兩個概念。

(34)改變,一般用$("#f").css("src","2.jpg")這樣的形式,改變它的src屬性。

(35).addclass(」class1 class2「),會一次性增加2個類別。

(36)select列表比較特殊,它不像checkbox那樣,$(":checkbox")就可以選擇,不能想當然的用$(":option")來選擇,這樣是選不到的,因為它不屬於input系列。於是要選擇select要麼 $(」select「)或者 $(」select option「),

(37)

針對VC中的一些基礎知識記錄

1 windows使用訊息機制的原因 首先使用訊息機制優於函式呼叫,因為訊息是物理資料,可以很方便的排隊和賦予優先順序。當乙個時間發生時,可以講該事件的訊息放入佇列,使得所有的訊息能以有序的方式進行處理。其次,訊息不依賴於處理器型別。其相容性很好 最後,訊息不依賴於特定的程式語言。使用各種語言編寫的...

swift基礎知識記錄(一)

1.swift基本資料型別 整型 int,提供8 16 32 64位有符號和無符號整數型別,無符整型uint8 16 32 64 有符整型int32 8 16 64 我們可以訪問到最大或最小的型別值,如uint8.min,此處的位是指有多少位二進位制,有符號的最高位為符號位。int預設與平台最高位長...

Java 基礎知識記錄

int整型 string字串型 char字元型 float,double浮點型別,即小數,使用float時小數後加f 輸出字元system.out.println hello world 每個println獨佔一行,print合併在同一行 自增 自減 加 減 乘 除法 餘數 與 或 非 短路與 短路...