首頁 >web前端 >前端問答 >jquery語法結構由哪幾部分組成

jquery語法結構由哪幾部分組成

青灯夜游
青灯夜游原創
2022-05-25 17:11:264060瀏覽

jquery語法結構由3部分組成:1、工廠函數“$()”,會根據“()”裡的參數進行查找和選擇html文檔中的元素,傳回包含元素的jquery物件; 2、選擇器,即工廠函數「()」中的參數;3、內建方法(函數),用於對選取的函數進行操作。

jquery語法結構由哪幾部分組成

本教學操作環境: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(&#39;Name&#39;)")       选取所有<div>中含有&#39;Name&#39;文本的元素 
  
$("div:empty")                  选取不包含子元素(包括文本元素)的<div>空元素 

$("div:has(p)")                 选取所有含有<p>元素的<div>元素 

$("div:parent")                 选取拥有子元素的(包括文本元素)<div>元素

5.可見性篩選選擇器

    $("div:hidden")                 选取所有不可见的<div>元素 

    $("div:visible")                选取所有可见的<div>元素

#6.屬性過濾選擇器

$("div[id]")                  选取所有拥有属性id的元素
$("input[name=&#39;test&#39;]")        选取所有的name属性等于&#39;test&#39;的<input>元素 
 
$("input[name!=&#39;test&#39;]")      选取所有的name属性不等于&#39;test&#39;的<input>元素 
 
$("input[name^=&#39;news&#39;]")        选取所有的name属性以&#39;news&#39;开头的<input>元素 
$("input[name$=&#39;news&#39;]")        选取所有的name属性以&#39;news&#39;结尾的<input>元素 
$("input[name*=&#39;news&#39;]")        选取所有的name属性包含&#39;news&#39;的<input>元素 
$("div[title|=&#39;en&#39;]")           选取属性title等于&#39;en&#39;或以&#39;en&#39;为前缀(该字符串后跟一个连字符&#39;-&#39;)的<div>元素
$("div[title~=&#39;en&#39;]")           选取属性title用空格分隔的值中包含字符en的<div>元素

$("div[id][title$=&#39;test&#39;]")     选取拥有属性id,并且属性title以&#39;test&#39;结束的<div>元素

7.子元素過濾選擇器

$("div .one:nth-child(2)")       选取class为&#39;one&#39;的<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为&#39;form1&#39;的表单内所有可用元素
$("#form2 :disabled")            选取id为&#39;form2&#39;的表单内所有不可用元素 
$("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影片教學web前端影片

以上是jquery語法結構由哪幾部分組成的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn