国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

jQuery 入門詳解(一)

only_do / 2372人閱讀

摘要:前面也花了不少時間,專門介紹了基礎(chǔ)這一塊,從最基礎(chǔ)的講起,再到以及特效。對象,文檔對象模型,每一份都可以表示成一棵樹。注意選擇器返回的是對象。名稱用法描述相當(dāng)于,子類選擇器相當(dāng)于后代選擇器查找兄弟節(jié)點,不包括自己本身。

jQuery 前言
Sorry:由于春節(jié)前工作的調(diào)動,加上這段時間公司任務(wù)比較多一直加班,所以文章停更了很久,期間也有不少朋友私信、評論我,希望我寫的快一點,在這里跟大家道個歉,后面更新速度可能會放緩,但是不會影響文章的質(zhì)量,謝謝大家的支持。

前面也花了不少時間,專門介紹了js基礎(chǔ)這一塊,從最基礎(chǔ)的js講起,再到DOMBOM以及特效。雖然花費了不少時間,不過在寫這些文章的時候,自己也收獲了很多東西。所以我還是會一如既往的寫下去。希望收藏文章的小伙伴們,不僅僅只是收藏,更重要的是多閱讀、多理解。

1. jQuery基本概念
jQuery是一個javascript庫,jQuery憑借著簡潔的語法和跨平臺的兼容性,極大的簡化了js操作DOM、處理事件、執(zhí)行動畫等操作。jQuery強(qiáng)調(diào)的理念是:"write less, do more"(寫的少,做的多)。
1.1 什么是 jQuery?
jQuery就是一個js庫,使用jQuery的話,會比使用JavaScript更簡單。官網(wǎng)地址

js庫:把一些常用到的方法寫到一個多帶帶的js文件,使用的時候直接去引用這js文件就可以了。(animate.jscommon.js)。

我們知道了,jQuery其實就是一個js文件,里面封裝了一大堆的方法方便我們的開發(fā),因此我們學(xué)習(xí)jQuery,其實就是學(xué)習(xí)jQuery這個js文件中封裝的一大堆方法。

1.2 jQuery 的版本
官網(wǎng)下載地址:點擊下載。jQuery的版本有很多,分為:1.x2.x3.x

版本分類:

版本 兼容范圍
1.x版本 能夠兼容IE678瀏覽器
2.x版本 不兼容IE678瀏覽器
3.x版本 不兼容IE678瀏覽器,更加的簡潔

1.x2.x版本jquery都不再更新版本了,現(xiàn)在只更新3.x版本。

壓縮版與未壓縮版:

名稱 大小 說明
jquery.js(開發(fā)版) 229KB 完整無壓縮版本,主要用于測試、學(xué)習(xí)和開發(fā)
jquery.min.js(生產(chǎn)版) 31KB 經(jīng)過壓縮,主要用于產(chǎn)品和項目,基本無可閱讀性
1.3 jQuery 初體驗
jQuery不需要安裝,直接在頁面中引用即可。

    
    初識jQuery
    

使用jQuery的三個步驟:

引入jQuery文件

入口函數(shù)

功能實現(xiàn)

關(guān)于jQuery的入口函數(shù):

第一種寫法:

$(document).ready(function(){
    // 執(zhí)行代碼
});

第二種寫法:

$(function(){
    // 執(zhí)行代碼
});

首先我們得明確一點,在 jQuery 庫中, ‘$’ 就是 jQuery 的一個簡寫形式。

jQuery入口函數(shù)與js入口函數(shù)對比:

類別 window.onload $(document).ready()
執(zhí)行時機(jī) 必須等待網(wǎng)頁中所有的內(nèi)容加載完畢后(包括圖片)才能執(zhí)行 網(wǎng)頁中所有DOM結(jié)構(gòu)繪制完畢后就執(zhí)行,并不會等待圖片、文件的加載
編寫個數(shù) 不能同時寫多個,下面的會把上面的覆蓋 能同時編寫多個,兩個入口函數(shù)互不影響
簡化寫法 $(function(){});

示例代碼: [ 01-初識jQuery.html ]

$(document).ready(function() {
    alert("123");
});

// 簡寫入口函數(shù)
$(function() {
    alert("呵呵");
});
1.4 jQuery對象 和 DOM對象
第一次學(xué)習(xí)jQuery,經(jīng)常分辨不清哪些是jQuery對象,哪些是DOM對象,通過本節(jié)我們來了解一下它們之間的關(guān)系。

1、DOM對象

DOM(Document Object Model,文檔對象模型),每一份DOM都可以表示成一棵樹。
var domObj = document.getElementById("id");    // 獲得DOM對象
var objHTML = domObj.innerHTML;                // 使用Javascript中的屬性-innerHTML

js 中,通過 getElementByTagName 或者 getElementById 來獲取元素節(jié)點。像這樣得到的 DOM 元素就是 DOM 對象。而且 DOM 對象可以使用 js 中的方法,如: innerHTML

2、jQuery對象

jQuery對象,是通過jQuery包裝DOM對象后產(chǎn)生的對象,jQuery對象是jQuery獨有的,它可以使用jQuery里面的方法。

例如:

// 獲取id為test的元素內(nèi)的html代碼
$("#test").html();  // .html()是jQ里面的方法

上面的代碼等同于:

document.getElementById("test").innerHTML;

jQ中,無法使用任何DOM對象的方法,例如:$("id").innerHTML,這是錯誤的寫法。同樣,在js中也無法使用jQ對象里面的方法,例如:document.getElementById("id").html(),這樣也是錯誤的。

1.5 jQuery對象 和 DOM對象相互轉(zhuǎn)換
為了大家在兩者對象轉(zhuǎn)換的時候不混淆,在定義jQ對象的時候,前面加上‘$’符。
var $variable; // jQuery 對象

var variable;  // DOM 對象

1、jQ對象轉(zhuǎn)成DOM對象:

jQ對象中是不能使用DOM對象里的方法的,但是如果jQ里的一些方法忘記的時候,只記得DOM中的方法的時候,怎么辦呢?這時候就可以將jQ對象轉(zhuǎn)換成DOM對象。

方法一(常用):[index]

var $box = $("#box");       // jQ獲取到的對象
var box = $box[0];          // 轉(zhuǎn)成DOM對象
box.innerHTML = "哈哈哈";   // 使用DOM對象的方法

方法二:get(index)

var $box = $("#box");       // jQ獲取到的對象
var box = $box.get(0);      // 轉(zhuǎn)成DOM對象
box.innerHTML = "哈哈哈";   // 使用DOM對象的方法

2、DOM對象轉(zhuǎn)成jQ對象:

DOM對象轉(zhuǎn)成jQ對象的十分簡單,只需要用$()DOM對象包裹起來就是一個jQ對象了。轉(zhuǎn)換之后就可以任意使用jQ的方法了。
var box = document.getElementById("#box");  // 獲取的DOM對象
var $box = $(box);      // 轉(zhuǎn)成jQ對象

示例代碼:隔行變色 [ 02-jq對象與DOM對象轉(zhuǎn)換-隔行變色.html ]





  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

效果圖:

2. jQuery 選擇器
jQuery選擇器是jQuery為我們提供的一組方法,讓我們更加方便的獲取到頁面中的元素。

注意: jQuery選擇器返回的是jQuery對象。

2.1 基本選擇器
我們都知道css選擇器,這里的基本選擇器跟css的是一模一樣的。
名稱 用法 描述
ID選擇器 $("#id"); 獲取指定ID的元素
類選擇器 $(".class"); 獲取所有同一類class的所有元素
標(biāo)簽選擇器 $("div"); 獲取同一類標(biāo)簽的所有元素
并集選擇器 $("div,p,li"); 使用逗號分隔,只要符合條件之一就可
交集選擇器 $("div.redClass"); 獲取classredClassdiv元素
.css("name","value")jQ的一個方法,可以為jQ對象設(shè)置樣式。name是樣式的名字,value是樣式的值

例如設(shè)置一個背景色:

$(function(){
    $("#box").css("backgroundColor","cyan");
})

示例代碼:基本選擇器的應(yīng)用 [ 03-jq選擇器-基本選擇器.html ]


我是第ID為one的盒子
我是Class為two的盒子
我是Class為Three的盒子

我是標(biāo)簽p

我是標(biāo)簽span 我是標(biāo)簽i

效果圖:

涉及到的方法:

名稱 作用
css("name","value") 添加樣式,name是樣式的名字,value是樣式的值
2.2 層級選擇器
名稱 用法 描述
子代選擇器 $("ul>li"); 使用>號,獲取兒子層級的元素,注意,并不會獲取孫子層級的元素
后代選擇器 $("ul li"); 使用空格,代表后代選擇器,獲取ul下的所有li元素,包括孫子等

示例代碼:


我是box1的子代

我是box1的子代

我是box1的后代

我是box1的后代

我是box2的子代

我是box2的子代

我是box2的后代

我是box2的后代

效果圖:

2.3 過濾選擇器
過濾選擇器主要是通過特定的過濾規(guī)則來篩選出所需的DOM元素,過濾規(guī)則與css中的偽類選擇器語法相同。即選擇器都以一個冒號‘:’開頭。按照不同的過濾規(guī)則,過濾選擇器可以分為:基本過濾內(nèi)容過濾可見性過濾屬性過濾子元素過濾表單對象屬性過濾選擇器。

1、基本過濾選擇器:

名稱 用法 描述
:first $("div:first") 選取所有div元素中,第一個div元素
:last $("div:last") 選取所有div元素中,最后一個div元素
:eq(index) $("li:eq(2)") 選取所有li元素中,索引號為2的元素,index0開始
:even $("li:even") 選取所有li元素中,索引號為偶數(shù)的元素
:odd $("li:odd") 選取所有li元素中,索引號為奇數(shù)的元素
:not(selector) $("div:not(.box)") 選取所有div元素中,不是.boxdiv元素
:gt(index) $("li:gt(1)") 選取所有li元素中,索引號大于1的元素,index0開始
:lt(index) $("li:lt(5)") 選取所有li元素中,索引號小于5的元素,index0開始
:header $(":header") 選取所有標(biāo)題元素,

...

:animated $("div:animated") 選取正在執(zhí)行動畫的div元素
:focus $(":focus") 選取當(dāng)前獲取焦點的元素

示例代碼:隔行變色 [ 05-jq選擇器-過濾選擇器.html ]


  • 這是第1個li
  • 這是第2個li
  • 這是第3個li
  • 這是第4個li
  • 這是第5個li
  • 這是第6個li
  • 這是第7個li
  • 這是第8個li
  • 這是第9個li
  • 這是第10個li

效果圖:

2、內(nèi)容過濾選擇器:

名稱 用法 描述
:contains(text) $("div:contains("我")") 選取含有文本“”的 所有div元素
:empty $("div:empty") 選取不包含子元素或者文本的空div元素
:has(selector) $("div:has(p)") 選取含有p元素的div元素
:parent $("div:parent") 選取含有子元素或者文本的div元素

3、可見性過濾選擇器:

名稱 用法 描述
:hidden $(":hidden") 選取所有不可見的元素 display:nonevisibility:hidden
:visible $("div:visible") 選取所有可見的div元素

4、屬性過濾選擇器:

屬性過濾選擇器是通過元素的屬性來獲取相應(yīng)的元素。
名稱 用法 描述
[attribute] $("div[id]") 選取擁有屬性iddiv元素
[attribute = value] $("div[title=test]") 選取屬性title"test"div元素
[attribute != value] $("div[title!=test]") 選取屬性title不為"test"div元素(沒有屬性titlediv也會被選取)
[attribute ^= value] $("div[title^=test]") 選取屬性title"test"開始的div元素
[attribute $= value] $("div[title$=test]") 選取屬性title"test"結(jié)束的div元素
[attribute *= value] $("div[title*=test]") 選取屬性title含有"test"div元素
`[attribute = value]` $("`div[title ="en"]`") 選取屬性titleen或以en為前綴的div元素
[attribute ~= value] $("div[title~="uk"]") 選取屬性title用空格分隔的值中包含字符uk的元素
[attribute][attribute2] $("div[id][titlr=test]") 選取擁有屬性id并且屬性titletestdiv元素

5、子元素過濾選擇器:

名稱 用法 描述
:first-child $("ul li:first-child") 選取每個ul中第一個li元素
:last-child $("ul li:last-child") 選取每個ul中最后一個li元素
`:nth-child(index even odd)` $("ul li:nth-child(index)") 選取每個ul中第indexli元素
:only-child $("ul li:only-child") 選取每個ul中是唯一子元素的li元素

nth-child()選擇器是很常用的子元素過濾選擇器:

:nth-child(even)能選取每個父元素下的索引值是偶數(shù)的元素;

:nth-child(odd)能選取每個父元素下的索引值是奇數(shù)的元素;

:nth-child(2)能選取每個父元素下的索引值是2的元素;

:nth-child(3n)能選取每個父元素下的索引值是3的倍數(shù)的元素;(n從1開始)

:nth-child(3n+1)能選取每個父元素下的索引值是3n+1的倍數(shù)的元素;(n從1開始)

5、表單對象屬性過濾選擇器

名稱 用法 描述
:enabled $("#form:enabled") 選取id名為“form”的表單內(nèi)所有可用元素
:disabled $("#form:disabled") 選取id名為“form”的表單內(nèi)所有不可用元素
:checked $("input:checked") 選取所有被選中的input元素(單選框、復(fù)選框)
:selected $("select option:selected") 選取所有被選中的選項元素
2.4 表單選擇器
為了能夠更加方便的操作表單,jQuery還為我們添加了表單選擇器。
名稱 用法 描述
:input $(":input") 選取所有inputtextareaselectbutton元素
:text $(":text") 選取所有的單行文本框
:password $(":password") 選取所有的密碼框
:radio $(":radio") 選取所有的單選框
:checkbox $(":checkbox") 選取所有的復(fù)選框
:submit $(":submit") 選取所有的提交按鈕
:image $(":image") 選取所有的圖像按鈕
:button $(":button") 選取所有的按鈕
:file $(":file") 選取所有的上傳域
:hidden $(":hidden") 選取所有的不可見元素

想要得到獲取的個數(shù)直接使用:.length方法:

$("#form :input").length;  // 獲得頁面中表單元素的個數(shù)
2.5 篩選選擇器
篩選選擇器的功能與過濾選擇器有點類似,但是用法不一樣,篩選選擇器主要是方法。
名稱 用法 描述
children(selector) $("ul").children("li") 相當(dāng)于$(“ul>li”),子類選擇器
find(selector) $("ul").find("li"); 相當(dāng)于$(“ul li”),后代選擇器
siblings(selector) $("#first").siblings("li"); 查找兄弟節(jié)點,不包括自己本身。
parent() $("#first").parent(); 查找父親
eq(index) $("li").eq(2); 相當(dāng)于$(“l(fā)i:eq(2)”),index從0開始
next() $("li").next() 找下一個兄弟
prev() $("li").prev() 找上一次兄弟
2.6 幾個小案例

1、簡單版手風(fēng)琴 [ 06-jq選擇器案例-簡單版手風(fēng)琴.html ]





涉及到的方法:

方法 作用
show() 顯示 隱藏的匹配元素
hide() 隱藏 顯示的匹配元素

注意: this指的是當(dāng)前的DOM對象,$(this),將this轉(zhuǎn)化為jQ對象

效果圖:

2、下拉菜單欄案例 [ 07-jq選擇器案例-下拉菜單欄.html ]








涉及到的方法:

方法 作用
mouseleave() 鼠標(biāo)離開 相當(dāng)于DOM中的onmouseout
mouseenter() 鼠標(biāo)進(jìn)入 相當(dāng)于DOM中的onmouseover

效果圖:

3、高亮顯示圖片 [ 08-jq選擇器案例-高亮顯示.html ]

在案例之前,跟大家說一個東西,在jQ中,不需要for循環(huán)遍歷,因為jQ自己會進(jìn)行遍歷,這在jQ里面就叫隱式迭代
    


涉及到的方法:

方法 作用
find() 查找元素,如:$(".nav").find("li") 找到.nav下面所有的li

效果圖:

4、淘寶廣告案例 [ 09-jq選擇器案例-淘寶廣告案例.html ]





  • 女靴
  • 雪地靴
  • 冬裙
  • 呢大衣
  • 毛衣
  • 棉服
  • 女褲
  • 羽絨服
  • 牛仔褲
  • 女包
  • 男靴
  • 登山鞋
  • 皮帶
  • 圍巾
  • 皮衣
  • 男毛衣
  • 男棉服
  • 男包

涉及到的方法:

方法 作用
index() 獲取的是當(dāng)前元素在他兄弟元素里面的下標(biāo)。
eq() 選擇第幾個元素,如:$("li").eq(3).show()讓第三個li顯示。

效果圖:

5、index()方法詳解: [ 10-jq選擇器案例-index方法解讀.html ]

獲取的是當(dāng)前元素在他兄弟元素里面的下標(biāo)。

我是wrap1

我是wrap2

我們可以看到,在wrap1里面的時候,li點擊的時候,獲取的是它在兄弟元素里面的下標(biāo)。在wrap2里面的時候,我們點擊的是a標(biāo)簽,此時a標(biāo)簽是沒有兄弟元素的,所以,不管點擊哪一個都是返回‘0’。

效果圖:

3. jQuery 節(jié)點操作 3.1 查找節(jié)點
查找節(jié)點非常容易,只要結(jié)合前面選擇器來完成。

1、查找元素節(jié)點 [ 11-jqDOM操作-查找元素節(jié)點.html ]


  • 北京
  • 上海
  • 廣州
  • 天津
  • 重慶

2、查找屬性節(jié)點 [ 12-jqDOM操作-查找屬性節(jié)點.html ]

使用jQ選擇器,查找到需要的元素后,可以使用attr()方法來獲取它的各種屬性的值。attr()的參數(shù)可以是一個,也可以是兩個,參數(shù)是一個的時候,則是要查詢的屬性的名字。

這是一句意味深長的話

3.2 創(chuàng)建節(jié)點
我們可以輕松的找到文檔中某個特定的元素節(jié)點,并且可以通過attr()方法來獲取元素各種各樣的屬性的值。但是真正的DOM操作并非這么簡單。在DOM操作中,常常需要動態(tài)創(chuàng)建HTML內(nèi)容,使文檔在瀏覽器里的呈現(xiàn)效果發(fā)生變化,并且達(dá)到人機(jī)交互的目的。 [ 13-jqDOM操作-創(chuàng)建節(jié)點.html ]

1、創(chuàng)建元素節(jié)點

創(chuàng)建元素節(jié)點很簡單,直接使用  $(html)html就是需要添加的元素。$(html)方法會根據(jù)傳入的HTML標(biāo)記字符串,創(chuàng)建一個DOM對象,并將這個DOM對象包裝成一個jQuery對象后返回。
$(function() {
    // 創(chuàng)建一個li元素
    var $li = $("
  • "); // 將創(chuàng)建的li添加到ul中 $("ul").append($li); // append 添加節(jié)點 下一節(jié)講 });

    因為創(chuàng)建的只是一個元素節(jié)點,所以里面沒有內(nèi)容只會看到li的一個標(biāo)題點:

    2、創(chuàng)建文本節(jié)點

    var $li_1 = $("
  • 北京
  • "); // 創(chuàng)建一個li元素,包括元素節(jié)點 文本節(jié)點 // "北京"就是文本節(jié)點 var $li_2 = $("
  • 上海
  • "); $("ul").append($li_1); $("ul").append($li_2);

    創(chuàng)建文本節(jié)點就是在創(chuàng)建元素節(jié)點時,直接把文本內(nèi)容寫出來:

    3、創(chuàng)建屬性節(jié)點

    var $li_3 = $("
  • 深圳
  • "); // 創(chuàng)建一個li元素,包括元素、文本、屬性節(jié)點 // title="城市" 就是屬性節(jié)點 $("ul").append($li_3);

    創(chuàng)建屬性節(jié)點的時候,與創(chuàng)建文本節(jié)點類似,直接將屬性寫在標(biāo)簽里:

    3.3 添加節(jié)點
    上面我們知道了如何動態(tài)創(chuàng)建一個元素,但是沒有實際用處,所以還需要將新創(chuàng)建的元素添加到文檔中。

    添加節(jié)點的方法:

    名稱 用法 描述
    append() $("ul").append("
  • 上海1
  • ")
    ul子元素的最后面依次添加li
    appendTo() $("
  • 上海2
  • ").appendTo("ul")
    li添加到ul子元素的最后面,參數(shù)與append正好顛倒過來
    prepend() $("ul").prepend("
  • 北京1
  • ")
    ul子元素的最前面依次添加li
    prependTo() $("
  • 北京2
  • ").prependTo("ul")
    li添加到ul子元素的最前面,參數(shù)與prepend正好顛倒過來
    after() $("ul").after("

    哈哈哈1

    ")
    ul的后面添加h2(兄弟元素)
    insertAfter() $("

    哈哈哈2

    ").insertAfter("ul")
    h2添加到ul的后面,參數(shù)與after正好顛倒過來
    before() $("ul").before("

    城市1

    ")
    ul的前面添加h2(兄弟元素)
    insertBefore() $("

    城市2

    ").insertBefore("ul")
    h2添加到ul的前面,參數(shù)與before正好顛倒過來

    示例代碼: [ 14-jqDOM操作-添加節(jié)點.html ]

    
    
    • 我是本來就有的

    這是ul外面的p標(biāo)簽

    效果圖:

    3.4 刪除節(jié)點
    如果文檔中某一個元素多余的時候,那么就應(yīng)該將其刪除。jQuery提供了三種刪除節(jié)點的方法:remove()detach()empty()

    1、remove()方法

    DOM中刪除所有匹配的元素,當(dāng)某個節(jié)點用remove()方法刪除之后,該節(jié)點包含的所有后代節(jié)點將同時被刪除,并且返回值就是該刪除的節(jié)點。

    示例代碼: [ 15-jqDOM操作-remove刪除節(jié)點.html ]

    
    
    • 北京
    • 上海
      • 閔行區(qū)
      • 浦東區(qū)
      • 徐匯區(qū)
      • 虹口區(qū)
    • 深圳
    • 天津
    • 重慶

    效果圖:

    另外remove()方法也可以通過傳遞參數(shù)來選擇性的刪除元素:

    $("ul li").remove("li[title != 上海]"); // 將li中屬性title不等于‘上海’的li移除掉

    2、detach()方法

    detach()方法和remove()一樣,也是從DOM中,去掉所有匹配的元素。但是這個方法不會把匹配的元素從jQuery對象中刪除,就是說所有綁定的事件、附加的數(shù)據(jù)都會保留下來。

    示例代碼: [ 16-jqDOM操作-detach刪除節(jié)點.html ]

    
    
    • 北京
    • 上海
    • 深圳
    • 天津
    • 重慶

    效果圖:

    我們可以看到,“上海”一開始是可以被點擊的,detach刪除以后,再添加到ul中的時候,它的點擊事件還在,還可以點擊。但是如果使用的是remove刪除的話,點擊事件就會被移除。

    3、empty()方法

    empty方法不是刪除節(jié)點,準(zhǔn)確的說,它是清空節(jié)點,它能清除匹配元素中的所有后代節(jié)點和內(nèi)容。

    示例代碼: [ 17-jqDOM操作-empty清空節(jié)點.html ]

    
    
    • 北京
    • 上海
      • 閔行區(qū)
      • 浦東區(qū)
      • 徐匯區(qū)
      • 虹口區(qū)
    • 深圳
    • 天津
    • 重慶

    效果圖:

    empty是清空匹配項的內(nèi)容,不管里面是文本還是有其它標(biāo)簽,都會被清空,但是匹配項的標(biāo)簽還會保留,不會被清空

    3.5 克隆節(jié)點
    克隆節(jié)點也是常用的DOM操作之一,它是通過clone()方法實現(xiàn)的,同樣的,它也有深拷貝淺拷貝。深拷貝和淺拷貝的區(qū)別就是,深拷貝會復(fù)制綁定的事件,而淺拷貝不會。實現(xiàn)原理很簡單,只要clone(true),加上true,就是深拷貝,默認(rèn)不傳或者傳false就是淺拷貝。

    示例代碼: [ 18-jqDOM操作-克隆節(jié)點.html ]

    
    

    淺拷貝

    • 北京
    • 上海
    • 深圳
    • 天津
    • 重慶

    深拷貝

    • 北京
    • 上海
    • 深圳
    • 天津
    • 重慶

    效果圖:

    我們可以看出,淺拷貝的時候,點擊“北京”克隆了一個“北京”的標(biāo)簽,并且添加到了ul中,但是新創(chuàng)建出來的沒有點擊事件。深拷貝的時候,新創(chuàng)建出來的還可以再次被點擊,說明綁定事件,也拷貝了。

    3.6 替換節(jié)點
    如果要替換某個節(jié)點,jQuery提供了兩個方法,即replaceWith()replaceAll()

    replaceWith()方法是將所有匹配的元素替換成指定的HTMLDOMreplaceAll()方法的作用與replaceWith()方法的作用一模一樣,只是顛倒了參數(shù)。

    示例代碼: [ 19-jqDOM操作-替換節(jié)點.html ]

    
    
    • 北京
    • 北京
    • 上海
    • 上海

    效果圖:

    替換前如果已經(jīng)為元素綁定事件,替換后原先綁定的事件將會與被替換的元素一起消失。

    3.7 包裹節(jié)點
    如果想要將某個節(jié)點,用其他標(biāo)記包裹起來,jQuery提供了相應(yīng)的方法,即wrap()。它還有兩個其他的方法:wrapAll()wrapInner()
    名稱 用法 描述
    wrap() $("h3").wrap("") 將所有的h3標(biāo)簽多帶帶用i標(biāo)簽包裹起來
    wrapAll() $("h3").wrapAll("") 將所有的h3標(biāo)簽全部包裹在i標(biāo)簽內(nèi)
    wrapInner() $("h3").wrapInner("") h3標(biāo)簽里面的子內(nèi)容(包括文本節(jié)點)用i標(biāo)簽包裹起來

    示例代碼: [ 20-jqDOM操作-包裹節(jié)點.html ]

    
    

    這里是上海

    這里是上海

    這里是上海

    這里是上海

    這里是上海

    這里是上海

    效果圖:

    3.8 遍歷節(jié)點
    本章第一節(jié)的時候,我們知道了如何查找節(jié)點,在jQuery中,還提供了一些查找節(jié)點的方法,我們通過這一小節(jié)的學(xué)習(xí),來認(rèn)識它們。

    1、children()方法:

    該方法用于獲得匹配元素的子元素的集合。
    
    
    
    
    

    注意: children()方法只能考慮子元素,后代元素不考慮。

    2、next()方法 和 nextAll()方法:

    next()方法用于獲得匹配元素后面緊鄰的同級元素。nextAll()方法用于獲得匹配元素后面所有的同級元素。
    
    

    這是一段意味深長的話

    • ul里面的子元素
    • ul里面的子元素
    • ul里面的子元素
    • ul里面的子元素
    哈哈哈

    3、prev()方法 和 prevAll()方法:

    prev()方法用于獲得匹配元素前面緊鄰的同級元素。prevAll()方法用于獲得匹配元素前面所有的同級元素。
    
    

    這是一段意味深長的話

    • ul的子元素
    • ul的子元素
    • ul的子元素
    哈哈哈

    4、siblings()方法:

    該方法用于匹配元素前后所有的兄弟元素。
    
    

    這是一段意味深長的話

    • ul的子元素
    • ul的子元素
    • ul的子元素
    呵呵呵 我會讓你見識一下什么叫殘忍

    5、closest()方法:

    該方法用于獲取最近的匹配元素。首先檢查當(dāng)前元素是否匹配,匹配的話直接返回,如果不匹配則向上查找父元素,逐級向上,直到找到匹配的元素,如果什么也沒找到,返回一個空的jQ對象。

    6、parent() 和 parents()方法:

    parent()方法是獲得匹配元素的父級元素。parents()方法獲取的是匹配元素的祖先元素。

    我們可以對比下closest()方法和parent()parents()方法的區(qū)別,根據(jù)實際需求靈活使用。

    3.9 節(jié)點操作案例

    1、選好友案例:

    
    
    
    
    
    
    
    
    
    
    
    

    效果圖:

    2、微博發(fā)布案例

    
    
    微博發(fā)布

      效果圖:

      4. jQuery 屬性操作 4.1 attr 操作
      jQuery中,用attr()方法來獲取和設(shè)置元素屬性,removeAttr()方法來刪除元素屬性。

      1、獲取屬性和設(shè)置屬性

      attr(),可           
                     
                                                 
                             
                       

      文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

      轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/93381.html

      相關(guān)文章

      • 【連載】前端個人文章整理-從基礎(chǔ)到入門

        摘要:個人前端文章整理從最開始萌生寫文章的想法,到著手開始寫,再到現(xiàn)在已經(jīng)一年的時間了,由于工作比較忙,更新緩慢,后面還是會繼更新,現(xiàn)將已經(jīng)寫好的文章整理一個目錄,方便更多的小伙伴去學(xué)習(xí)。 showImg(https://segmentfault.com/img/remote/1460000017490740?w=1920&h=1080); 個人前端文章整理 從最開始萌生寫文章的想法,到著手...

        madthumb 評論0 收藏0
      • 前端文檔收集

        摘要:系列種優(yōu)化頁面加載速度的方法隨筆分類中個最重要的技術(shù)點常用整理網(wǎng)頁性能管理詳解離線緩存簡介系列編寫高性能有趣的原生數(shù)組函數(shù)數(shù)據(jù)訪問性能優(yōu)化方案實現(xiàn)的大排序算法一怪對象常用方法函數(shù)收集數(shù)組的操作面向?qū)ο蠛驮屠^承中關(guān)鍵詞的優(yōu)雅解釋淺談系列 H5系列 10種優(yōu)化頁面加載速度的方法 隨筆分類 - HTML5 HTML5中40個最重要的技術(shù)點 常用meta整理 網(wǎng)頁性能管理詳解 HTML5 ...

        jsbintask 評論0 收藏0
      • 前端文檔收集

        摘要:系列種優(yōu)化頁面加載速度的方法隨筆分類中個最重要的技術(shù)點常用整理網(wǎng)頁性能管理詳解離線緩存簡介系列編寫高性能有趣的原生數(shù)組函數(shù)數(shù)據(jù)訪問性能優(yōu)化方案實現(xiàn)的大排序算法一怪對象常用方法函數(shù)收集數(shù)組的操作面向?qū)ο蠛驮屠^承中關(guān)鍵詞的優(yōu)雅解釋淺談系列 H5系列 10種優(yōu)化頁面加載速度的方法 隨筆分類 - HTML5 HTML5中40個最重要的技術(shù)點 常用meta整理 網(wǎng)頁性能管理詳解 HTML5 ...

        muddyway 評論0 收藏0
      • jQuery入門筆記之(三)事件詳解

        摘要:可以傳遞三個參數(shù)表示一個或多個事件類型,比如。表示綁定到指定元素的處理函數(shù)。我們稱它為簡寫事件。必須在中,并且使用作為事件觸發(fā)元素,不然無效。和表示鼠標(biāo)移入和移出的時候觸發(fā)。按下返回按下返回和分別表示光標(biāo)激活和丟失,事件觸發(fā)時機(jī)是當(dāng)前元素。 轉(zhuǎn)自個人博客 在JavaScript 有一個非常重要的功能,就是事件驅(qū)動。如果你的網(wǎng)頁需要與用戶進(jìn)行交互的話,就不可能不用到事件。它在頁面完全加...

        GitCafe 評論0 收藏0

      發(fā)表評論

      0條評論

      only_do

      |高級講師

      TA的文章

      閱讀更多
      最新活動
      閱讀需要支付1元查看
      <