jquery語法結構由3部分組成:1、工廠函數「$()」,會根據「()」裡的引數進行查詢和選擇html檔案中的元素,返回包含元素的jquery物件;2、選擇器,即工廠函數「()」中的引數;3、內建方法(函數),用於對選取的函數進行操作。
本教學操作環境:windows7系統、jquery1.10.2版本、Dell G3電腦。
jQuery語句主要包含三大部分:$()、document和action()分別被稱為工廠函數、選擇器、方法。
語法:
$(selector).action();
選擇器selector
$(selector)
方法action()
jQuery物件.addClass([樣式名])
jquery中的$()
jQuery 裡邊兒的$
代表獲取的意思,相當於document.getElemenById("id名")
;當然,也相當於document.getElementsByClassName("class名")
等等同上道理。
$
符號主要是用於獲得元素物件,通過獲取物件,才能使用jquery方法對其進行操作。
$其實就是jQuery的別稱,指的就是jQuery物件,而jQuery就是jQuery庫提供的一個函數
這個函數的作用是根據 () 裡的引數進行查詢和選擇html檔案中的元素, 函數作用之一就是GetElementByID的代替,但()內不僅可以是ID,還可以是各類選擇器
比如:
$(document)
就是 選取整個檔案物件
那是不是隻可以用$來代替,不是。為了防止命名衝突,jQuery庫提供了另外的機制來給jQuery函數起另外的別名。
例如:
var jq = jQuery.noConflict(); // Do something with jQuery j("div p").hide(); // Do something with another library's $() $("content").style.display = 'none';
就可以在程式碼裡用jq 代替jQuery 和 $ 了。
簡單來說,$就是jquery物件,$()就是jQuery(),在裡面可以傳引數,作用就是獲取元素。
jquery中的選擇器
jQuery 選擇器允許對 HTML 元素組或單個元素進行操作。
jQuery 選擇器基於元素的 id、類、型別、屬性、屬性值等"查詢"(或選擇)HTML 元素。 它基於已經存在的 CSS 選擇器,除此之外,它還有一些自定義的選擇器。
1 .基本選擇器
$("#test") 選擇id值為test的元素,id值是唯一的所以返回單個元素。 $("div") 選擇所有的div標籤元素,返回div元素陣列 $(".myclass") 選擇使用myclass類的css的所有元素 $("*") 選取所有元素。 $("#test,div,.myclass") 選取多個元素。
2.層次選擇器
$("div span") 選取<div>裡的所有<span>元素 $("div >span") 選取<div>元素下元素名是<span>的子元素 $("#one +div") 選取id為one的元素的下一個<div>同輩元素 等同於$("#one").next("div") $("#one~div") 選取id為one的元素的元素後面的所有<div>同輩元素 等同於$("#one").nextAll("div") $("#one").siblings("div") 獲取id為one的元素的所有<div>同輩元素(不管前後) $("#one").prev("div") 獲取id為one的元素的前面緊鄰的同輩<div>元素 所以 獲取元素範圍大小順序依次為: $("#one").siblings("div")>$("#one~div")>$("#one +div") 或是 $("#one").siblings("div")>$("#one").nextAll("div")>$("#one").next("div")
3.基本過濾選擇器
$("div:first") 選取所有<div>元素中第1個<div>元素 $("div:last") 選取所有<div>元素中最後一個<div>元素 $("input:not(.myClass)") 選取class不是myClass的<input>元素 $("input:even") 選取索引是偶數的<input>元素(索引從0開始) $("input:odd") 選取索引是基數的<input>元素(索引從0開始) $("input:eq(2)") 選取索引等於2的<input>元素 $("input:gt(4)") 選取索引大於4的<input>元素 $("input:lt(4)") 選取索引小於4的<input>元素 $(":header") 過濾掉所有標題元素,例如:h1、h2、h3等 $("div:animated") 選取正在執行動畫的<div>元素 $(":focus") 選取當前獲取焦點的元素
4.內容過濾選擇器
$("div:contains('Name')") 選取所有<div>中含有'Name'文字的元素 $("div:empty") 選取不包含子元素(包括文字元素)的<div>空元素 $("div:has(p)") 選取所有含有<p>元素的<div>元素 $("div:parent") 選取擁有子元素的(包括文字元素)<div>元素
5.可見性過濾選擇器
$("div:hidden") 選取所有不可見的<div>元素 $("div:visible") 選取所有可見的<div>元素
6.屬性過濾選擇器
$("div[id]") 選取所有擁有屬性id的元素 $("input[name='test']") 選取所有的name屬性等於'test'的<input>元素 $("input[name!='test']") 選取所有的name屬性不等於'test'的<input>元素 $("input[name^='news']") 選取所有的name屬性以'news'開頭的<input>元素 $("input[name$='news']") 選取所有的name屬性以'news'結尾的<input>元素 $("input[name*='news']") 選取所有的name屬性包含'news'的<input>元素 $("div[title|='en']") 選取屬性title等於'en'或以'en'為字首(該字串後跟一個連字元'-')的<div>元素 $("div[title~='en']") 選取屬性title用空格分隔的值中包含字元en的<div>元素 $("div[id][title$='test']") 選取擁有屬性id,並且屬性title以'test'結束的<div>元素
7.子元素過濾選擇器
$("div .one:nth-child(2)") 選取class為'one'的<div>父元素下的第2個子元素 $("div span:first-child") 選取每個<div>中的第1個<span>元素 $("div span:last-child") 選取每個<div>中的最後一個<span>元素 $("div button:only-child") 在<div>中選取是唯一子元素的<button>元素
8.表單物件屬性過濾選擇器
$("#form1 :enabled") 選取id為'form1'的表單內所有可用元素 $("#form2 :disabled") 選取id為'form2'的表單內所有不可用元素 $("input :checked") 選取所有被選中的<input>元素 $("select option:selected") 選取所有的select 的子元素中被選中的元素
9.表單選擇器
$(":input") 選取所有<input>,<textarea>,<select> 和 <button>元素 $(":text") 選取所有的單行文字方塊 $(":password") 選取所有的密碼框 $(":radio") 選取所有單的選框 $(":checkbox") 選取所有的多選框 $(":submit") 選取所有的提交按鈕 $(":image") 選取所有的影象按鈕 $(":reset") 選取所有的重置按鈕 $(":button") 選取所有的按鈕 $(":file") 選取所有的上傳域 $(":hidden") 選取所有不可見元素
jquery中的方法
jquery內建的方法(函數),用於對選取的函數進行操作
例如:
直接操作元素樣式的方法
CSS 屬性 | 描述 |
---|---|
css() | 設定或返回匹配元素的樣式屬性。 |
height() | 設定或返回匹配元素的高度。 |
offset() | 返回第一個匹配元素相對於檔案的位置。 |
position() | 返回第一個匹配元素相對於父元素的位置。 |
scrollLeft() | 設定或返回匹配元素相對卷軸左側的偏移。 |
scrollTop() | 設定或返回匹配元素相對卷軸頂部的偏移。 |
width() | 設定或返回匹配元素的寬度。 |
間接操作元素樣式的方法
在jquery中,可以通過操作元素屬性來間接操作元素樣式。
方法 | 描述 |
---|---|
addClass() | 向匹配的元素新增指定的類名。 |
attr() | 設定或返回匹配元素的屬性和值。 |
prop() | 設定或返回被選元素的屬性/值 |
removeAttr() | 從所有匹配的元素中移除指定的屬性。 |
removeClass() | 從所有匹配的元素中刪除全部或者指定的類。 |
toggleClass() | 從匹配的元素中新增或刪除一個類。 |
擴充套件知識:
DOM模型
在DOM裡存在很多不同型別的節點,通常分為3種:元素節點、文位元組點和屬性節點。
DOM物件
在JavaScript中,可以使用getElementsByTagName()或者getElementsById()來獲取元素節點,這樣得到的是DOM物件,它可以使用JavaScript中的方法。
jQuery物件
通過jQuery包裝DOM物件後產生的物件,能使用jQuery中的方法。
例:$(「#title」).html(); //獲取id為title的元素內的html程式碼
【等同於document.getElementsById(「title」).innerHTML】
jQuery物件和DOM物件的相互轉換
1)jQuery物件轉換成DOM物件
①jQuery物件是一個類似陣列的物件,可通過[index]的方法得到相應的DOM物件。
②通過get(index)方法得到相應的DOM物件。
2)DOM物件轉換成jQuery物件
需要用$()函數將DOM物件包裝起來,就可以得到一個jQuery物件。
【推薦學習:、】
以上就是jquery語法結構由哪幾部分組成的詳細內容,更多請關注TW511.COM其它相關文章!