JQuery基礎(chǔ)

#JQuery基礎(chǔ)

1.?Javascript類(lèi)的實(shí)現(xiàn)方式

????1.?Object方式

????????* Objecet是所有類(lèi)的父類(lèi),可以使用Object表示其他類(lèi)

????2.?函數(shù)方式

????????* 函數(shù)名作為類(lèi)名,函數(shù)內(nèi)部包含的屬性和方法作為類(lèi)成員

2.?this的作用

* this表示當(dāng)前作用域下的對(duì)象

* 不同作用域下this表示的對(duì)象不同

????????* 在函數(shù)中指向的是window

????????* 在方法中指向的是調(diào)用該方法的對(duì)象

3.?對(duì)象類(lèi)型的判斷

????1.?typeof函數(shù)

????????* 返回對(duì)象的具體類(lèi)型

????2.?instanceof函數(shù)

????????* 判斷對(duì)象是否是某種類(lèi)型的實(shí)例

4.?在頁(yè)面中引入jQuery

????```

????????<script src="js/jquery-3.1.0.js" type="text/javascript"></script>

????```

????注意:一定要放在前面(可放在header中)

5.?jQuery基礎(chǔ)語(yǔ)法

????1.?$(document).ready()與window.onload類(lèi)似,但也有區(qū)別

????| |window.onload|$(document).ready()|

????|---|---|---|

????|執(zhí)行時(shí)機(jī)|必須等待網(wǎng)頁(yè)中所有的內(nèi)容加載完畢后(包括圖片、flash、視頻等)才能執(zhí)行|網(wǎng)頁(yè)中所有DOM文檔結(jié)構(gòu)繪制完畢后即刻執(zhí)行,可能與DOM元素關(guān)聯(lián)的內(nèi)容(圖片、flash、視頻等)并沒(méi)有加載完|

????|編寫(xiě)個(gè)數(shù)|同一頁(yè)面不能編寫(xiě)多個(gè)|同一頁(yè)面能編寫(xiě)多個(gè)|

????|簡(jiǎn)化寫(xiě)法|無(wú)|$(function(){//執(zhí)行代碼})?;|

6.?jQuery語(yǔ)法結(jié)構(gòu)

????```$(selector).action()?;```

* 工廠函數(shù)$():將DOM對(duì)象轉(zhuǎn)化為jQuery對(duì)象

* 選擇器 selector:獲取需要操作的DOM 元素

* 方法action():jQuery中提供的方法

????????示例:```$("#current").addClass("current"); ```

7.?jQuery代碼風(fēng)格

????1.?“$”等同于“ jQuery ”

????????```

????????????$(document).ready()=jQuery(document).ready()

????????????$(function(){...})=jQuery (function(){...})

????????```

????2.?操作連綴書(shū)寫(xiě)

????????```

????????????$("h2").css("background-color","#CCFFFF").next().css("display","block");

????????```

????3.?DOM對(duì)象和jQuery對(duì)象

????????* DOM對(duì)象:直接使用JavaScript獲取的節(jié)點(diǎn)對(duì)象

????????????```

????????????????var objDOM=document.getElementById("title");?

????????????????var objHTML=objDOM.innerHTML;?

????????????```

????????* jQuery對(duì)象:使用jQuery包裝DOM對(duì)象 后產(chǎn)生的對(duì)象,它能夠使用jQuery中的方法

????????????```

????????????????$("#title").html( );

????????????????等同于

????????????????document.getElementById("title").innerHTML;

????????????```

????????*??提示:DOM對(duì)象和jQuery對(duì)象分別擁有一套獨(dú)立的方法,不能混用

????4.?使用$()函數(shù)進(jìn)行轉(zhuǎn)化:$(DOM對(duì)象)

????????```

????????????var txtName =document.getElementById("txtName"); //DOM對(duì)象

????????????var $txtName =$(txtName);???//jQuery對(duì)象

????????```

????????**注意:jQuery對(duì)象命名一般約定以$開(kāi)頭

????5.?jQuery對(duì)象轉(zhuǎn)DOM對(duì)象


?????????* jQuery對(duì)象是一個(gè)類(lèi)似數(shù)組的對(duì)象,可以通過(guò)[index]的方法得到相應(yīng)的DOM對(duì)象

????????????```

????????????????var $txtName =$ ("#txtName");??????//jQuery對(duì)象

????????????????var txtName =$txtName[0];??????????//DOM對(duì)象

????????????```

????????* 通過(guò)get(index)方法得到相應(yīng)的DOM對(duì)象


????????????```

????????????????var $txtName =$("#txtName");????????//jQuery對(duì)象

????????????????var txtName =$txtName.get(0);???????//DOM對(duì)象

????????????```

8.??jQuery選擇器

????1.?基本選擇器包括標(biāo)簽選擇器、類(lèi)選擇器、ID選擇器、并集選擇器、交集選擇器和全局選擇器

????????|名稱(chēng)|語(yǔ)法構(gòu)成|描述|示例|

????????|---|:---:|:---:|---:|

????????|標(biāo)簽選擇器|element|根據(jù)給定的標(biāo)簽名匹配元素|$("h2"?)選取所有h2元素|

????????|類(lèi)選擇器|.class|根據(jù)給定的class匹配元素|$(" .title")選取所有class為title的元素|

????????|ID選擇器|#id|根據(jù)給定的id匹配元素|$(" #title")選取id為title的元素|

????????|并集選擇器|selector1,selector2,...,selectorN|將每一個(gè)選擇器匹配的元素合并后一起返回|$("div,p,.title"?)選取所有div、p和擁有class為title的元素|

????????|交集選擇器|element.class或element#id|匹配指定class或id的某元素或元素集合|$("h2.title")選取所有擁有class為title的h2元素|

????????|全局選擇器|*|匹配所有元素|$("*"?)選取所有元素|


????2.?層次選擇器通過(guò)DOM 元素之間的層次關(guān)系來(lái)獲取元素

????????|名稱(chēng)|語(yǔ)法構(gòu)成|描述|示例|

????????|---|---|---|---|

????????|后代選擇器|ancestor descendant|選取ancestor元素里的所有descendant(后代)元素|$("#menu span"?)選取#menu下的\<span>元素|

????????|子選擇器|parent>child|選取parent元素下的child(子)元素|$(" #menu>span"?)選取#menu的子元素\<span>|

????????|相鄰元素選擇器|prev+next|選取緊鄰prev元素之后的next元素|$(" h2+dl "?)選取緊鄰\<h2>元素之后的同輩元素\<dl>|

????????|同輩元素選擇器|prev~sibings|選取prev元素之后的所有siblings元素|$(" h2~dl "?)選取\<h2>元素之后所有的同輩元素\<dl>|

????????|屬性選擇器|[attribute]|選取包含給定屬性的元素|$(" [href]"?)選取含有href屬性的元素|

????????|屬性選擇器|[attribute=value]|選取等于給定屬性是某個(gè)特定值的元素|$(" [href ='#']"?)選取href屬性值為“#”的元素|

????????|屬性選擇器|[attribute?!=value]|選取不等于給定屬性是某個(gè)特定值的元素|$(" [href?!='#']"?)選取href屬性值不為“#”的元素|

????????|屬性選擇器|[attribute^=value]|選取給定屬性是以某些特定值開(kāi)始的元素|$(" [href^='en']"?)選取href屬性值以en開(kāi)頭的元素|

????????|屬性選擇器|[attribute$=value]|選取給定屬性是以某些特定值結(jié)尾的元素|$(" [href$='.jpg']"?)選取href屬性值以.jpg結(jié)尾的元素|

????????|屬性選擇器|[attribute*=value]|選取給定屬性是以包含某些值的元素|$(" [href* ='txt']"?)選取href屬性值中含有txt的元素|

????????|屬性選擇器|[selector] [selector2] [selectorN]|選取滿足多個(gè)條件的復(fù)合屬性的元素|$("li[id][title=新聞要點(diǎn)]"?)選取含有id屬性和title屬性為新聞要點(diǎn)的\<li>元素|

????3.?過(guò)濾選擇器通過(guò)特定的過(guò)濾規(guī)則來(lái)篩選元素

????????* 語(yǔ)法特點(diǎn)是使用“:”,如使用$(“l(fā)i:first”)來(lái)選取第一個(gè)li元素

????????* 基本過(guò)濾選擇器、可見(jiàn)性過(guò)濾選擇器、內(nèi)容過(guò)濾選擇器、子元素過(guò)濾選擇器……

????????* 基本過(guò)濾選擇器可以選取第一個(gè)元素、最后一個(gè)元素、索引為偶數(shù)或奇數(shù)的元素

????????????|名稱(chēng)|語(yǔ)法構(gòu)成|描述|示例|

????????????|---|---|---|---|

????????????|基本過(guò)濾選擇器|:first|選取第一個(gè)元素|$(" li:first"?)選取所有\(zhòng)<li>元素中的第一個(gè)\<li>元素|

????????????|基本過(guò)濾選擇器|:last|選取最后一個(gè)元素|$(" li:last"?)選取所有<li>元素中的最后一個(gè)\<li>元素|

????????????|基本過(guò)濾選擇器|:even|選取索引是偶數(shù)的所有元素(index從0開(kāi)始)|$(" li:even"?)選取索引是偶數(shù)的所有\(zhòng)<li>元素|

????????????|基本過(guò)濾選擇器|:odd|選取索引是奇數(shù)的所有元素(index從0開(kāi)始)|$(" li:odd"?)選取索引是奇數(shù)的所有\(zhòng)<li>元素|

????????????|基本過(guò)濾選擇器|:eq(index)|選取索引等于index的元素(index從0開(kāi)始)|$("li:eq(1)"?)選取索引等于1的\<li>元素|

????????????|基本過(guò)濾選擇器|:gt(index)|選取索引大于index的元素(index從0開(kāi)始)|$(" li:gt(1)"?)選取索引大于1的\<li>元素(注:大于1,不包括1)|

????????????|基本過(guò)濾選擇器|:lt(index)|選取索引小于index的元素(index從0開(kāi)始)|$(“l(fā)i:lt(1)”?)選取索引小于1的\<li>元素(注:小于1,不包括1)|

????????????|基本過(guò)濾選擇器|:not(selector)|選取去除所有與給定選擇器匹配的元素|$(" li:not(.three)"?)選取class不是three的元素|

????????????|基本過(guò)濾選擇器|:header|選取所有標(biāo)題元素,如h1~h6|$(":header"?)選取網(wǎng)頁(yè)中所有標(biāo)題元素|

????????????|基本過(guò)濾選擇器|:focus|選取當(dāng)前獲取焦點(diǎn)的元素|$(":focus"?)選取當(dāng)前獲取焦點(diǎn)的元素|

????????* 可見(jiàn)性過(guò)濾選擇器可以通過(guò)元素顯示狀態(tài)來(lái)選取元素

????????????|名稱(chēng)|語(yǔ)法構(gòu)成|描述|示例|

????????????|---|---|---|---|

????????????|可見(jiàn)性過(guò)濾選擇器|:visible|選取所有可見(jiàn)的元素|$(":visible"?)選取所有可見(jiàn)的元素|

????????????|可見(jiàn)性過(guò)濾選擇器|:hidden|選取所有隱藏的元素|$(":hidden"?) 選取所有隱藏的元素|

????????????* 示例 ```$("?p:hidden").show();```獲取隱藏的<p>元素,使其顯示

????????????* 示例 ```$("?p:visible").hide();```獲取顯示的<p>元素,使其隱藏

9.?jQuery的樣式設(shè)置

????1.?使用css()為指定的元素設(shè)置樣式值

????????```css(name,value)```

????????示例:$(this).css("border","5px solid #f5f5f5");

????2.?使用css()添加邊框效果

????3.?追加樣式


????????```addClass(class)或addClass(class1 class2 … classN)```

????4.?移除樣式

????????```removeClass(“style2 ”)或removeClass("style1 style2 ")```

????5.?toggleClass()模擬了addClass()與removeClass()實(shí)現(xiàn)樣式切換的過(guò)程

????6.?html()可以對(duì)HTML代碼進(jìn)行操作,類(lèi)似于JS中的innerHTML

????????示例: $("div.left").html("<div class='content'>…</div>");

????7.?text()可以獲取或設(shè)置元素的文本內(nèi)容

????8.?html()和text() 的區(qū)別如下:

????????|語(yǔ)法|參數(shù)|功能|

????????|html()|無(wú)參數(shù)|用于獲取第一個(gè)匹配元素的HTML內(nèi)容或文本內(nèi)容|

????????|html(content)|content參數(shù)為元素的HTML內(nèi)容|用于設(shè)置所有匹配元素的HTML內(nèi)容或文本內(nèi)容|

????????|text()|無(wú)參數(shù)|用于獲取所有匹配元素的文本內(nèi)容|

????????|text (content)|content參數(shù)為元素的文本內(nèi)容|用于設(shè)置所有匹配元素的文本內(nèi)容|

????9.?val()可以獲取或設(shè)置元素的value屬性值

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 一、樣式篇 第1章 初識(shí)jQuery (1)環(huán)境搭建 進(jìn)入官方網(wǎng)站獲取最新的版本 http://jquery.co...
    凜0_0閱讀 3,443評(píng)論 0 44
  • 第一章 jQuery簡(jiǎn)介 1-1 jQuery簡(jiǎn)介 1.簡(jiǎn)介 2.優(yōu)勢(shì) 3.特性與工具方法 1-2 環(huán)境搭建 進(jìn)入...
    mo默22閱讀 1,608評(píng)論 0 11
  • jQuery基礎(chǔ)(一)——樣式篇 1-2環(huán)境搭建 1-3 jQuery HelloWorld體驗(yàn) $(docume...
    croyance0601閱讀 1,104評(píng)論 0 8
  • 環(huán)境搭建 進(jìn)入官方網(wǎng)站獲取最新的版本 http://jquery.com/download/ ,這里需要注意 j...
    阿r阿r閱讀 814評(píng)論 0 7
  • 武陵絕境毓張仙, 崀靄丹霞一線牽。 衡岳靈秀誰(shuí)繼響, 巴陵勝狀范爭(zhēng)先。 梅山龍宮賽乳腺, 紫鵲梯田薄云巖。 莽莽碧...
    寂寞的冰山閱讀 252評(píng)論 0 2