第 5 章 jQuery 操作 DOM 元素

使用 attr() 方法控制元素的屬性

attr()方法的作用是設(shè)置或者返回元素的屬性显沈,其中attr(屬性名)格式是獲取元素屬性名的值,attr(屬性名滋早,屬性值)格式則是設(shè)置元素屬性名的值峡钓。

例如巾遭,使用attr(屬性名)的格式獲取頁(yè)面中<a>元素的 " href " 屬性值,并將該值的內(nèi)容顯示在<span>元素中平道,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出睹欲,通過(guò)attr()方法可以方便地獲取元素中指定屬性名稱的內(nèi)容,并將獲取的內(nèi)容通過(guò)html()方法顯示在頁(yè)面中巢掺。

操作元素的內(nèi)容

使用html()text()方法操作元素的內(nèi)容句伶,當(dāng)兩個(gè)方法的參數(shù)為空時(shí)劲蜻,表示獲取該元素的內(nèi)容,而如果方法中包含參數(shù)考余,則表示將參數(shù)值設(shè)置為元素內(nèi)容先嬉。

例如,分別使用html()text()方法獲取一個(gè)元素的內(nèi)容楚堤,并將獲取的內(nèi)容顯示在不同的<div>元素中疫蔓,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出,html()方法可以獲取元素的 HTML 內(nèi)容身冬,因此衅胀,原文中的格式代碼也被一起獲取,而text()方法只是獲取元素中的文本內(nèi)容酥筝,并不包含 HTML 格式代碼滚躯,所以它顯示的內(nèi)容并沒(méi)有變 " 歪 " 。

操作元素的樣式

通過(guò)addClass()css()方法可以方便地操作元素中的樣式嘿歌,前者括號(hào)中的參數(shù)為增加元素的樣式名稱掸掏,后者直接將樣式的屬性內(nèi)容寫在括號(hào)中。

例如宙帝,使用addClass()方法丧凤,改變<div>元素的背景色和文字顏色,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出步脓,通過(guò)addClass()方法為<div>元素增加了兩個(gè)樣式名稱愿待,從而改變了<div>元素的背景和文字顏色,增加多個(gè)樣式名稱時(shí)靴患,要用空格隔開(kāi)仍侥。

css()方法和addClass()方法用法類似,只是需要去設(shè)置具體樣式了蚁廓。

移除屬性和樣式

使用removeAttr(name)removeClass(class)分別可以實(shí)現(xiàn)移除元素的屬性和樣式的功能访圃,前者方法中參數(shù)表示移除屬性名,后者方法中參數(shù)則表示移除的樣式名

例如相嵌,使用removeAttr()方法移除<a>元素中的 " href " 屬性腿时,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出,使用removeAttr()方法移除元素的 " href " 屬性后饭宾,再次顯示元素的 " href " 屬性值時(shí)批糟,則為空值,<a>元素中的文字也丟失可點(diǎn)擊的效果看铆。

使用 append() 方法向元素內(nèi)追加內(nèi)容

append(content)方法的功能是向指定的元素中追加內(nèi)容徽鼎,被追加的 content 參數(shù),可以是字符、HTML 元素標(biāo)記否淤,還可以是一個(gè)返回字符串內(nèi)容的函數(shù)悄但。

例如,在頁(yè)面的<body>元素中追加一個(gè)具有 " id " 石抡、 " title " 屬性和顯示內(nèi)容的<div>元素檐嚣,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出,由于使用append()方法在<body>元素中追加了一些 HTML 元素標(biāo)記啰扛,因此追加后嚎京,這些元素標(biāo)記直接生成對(duì)應(yīng)的元素和屬性顯示在頁(yè)面中。

使用 appendTo() 方法向被選元素內(nèi)插入內(nèi)容

appendTo()方法也可以向指定的元素內(nèi)插入內(nèi)容隐解,它的使用格式是:

$(content).appendTo(selector)

參數(shù) content 表示需要插入的內(nèi)容鞍帝,參數(shù) selector 表示被選的元素,即把 content 內(nèi)容插入 selector 元素內(nèi)煞茫,默認(rèn)是在尾部帕涌。

例如,使用appendTo()方法溜嗜,將<div>外的<span>元素插入<div>內(nèi)宵膨,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出,使用appendTo()方法將類別名為 " red " 的<span>元素插入到<div>元素的尾部炸宵,相當(dāng)于追加的效果。

使用 before() 和 after() 在元素前后插入內(nèi)容

使用before()after()方法可以在元素的前后插入內(nèi)容谷扣,它們分別表示在整個(gè)元素的前面和后面插入指定的元素或內(nèi)容土全,調(diào)用格式分別為:

$(selector).before(content) 和 $(selector).after(content)

其中參數(shù)content表示插入的內(nèi)容,該內(nèi)容可以是元素或HTML字符串会涎。

例如裹匙,調(diào)用before()方法在一個(gè)<span>元素插入另一個(gè)<span>元素,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出末秃,使用before()方法將 HTML 格式的內(nèi)容插入到原有<span>元素內(nèi)容之前概页,而并不僅是它的內(nèi)部文本。

使用 clone() 方法復(fù)制元素

調(diào)用clone()方法可以生成一個(gè)被選元素的副本练慕,即復(fù)制了一個(gè)被選元素惰匙,包含它的節(jié)點(diǎn)、文本和屬性铃将,它的調(diào)用格式為:

$(selector).clone()

其中參數(shù) selector 可以是一個(gè)元素或 HTML 內(nèi)容项鬼。

例如,使用clone()方法復(fù)制頁(yè)面中的一個(gè)<span>元素劲阎,并將復(fù)制后的元素追加到頁(yè)面的后面绘盟,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出,使用clone()方法復(fù)制元素時(shí),不僅復(fù)制了該元素的文本和節(jié)點(diǎn)龄毡,還將它的 " title " 屬性也一起復(fù)制過(guò)來(lái)了吠卷。

替換內(nèi)容

replaceWith()replaceAll()方法都可以用于替換元素或元素中的內(nèi)容,但它們調(diào)用時(shí)沦零,內(nèi)容和被替換元素所在的位置不同撤嫩,分別為如下所示:

$(selector).replaceWith(content) 和 $(content).replaceAll(selector)

參數(shù) selector 為被替換的元素,content 為替換的內(nèi)容蠢终。

例如序攘,調(diào)用replaceWith()方法將頁(yè)面中<span>元素替換成一段HTML字符串,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出寻拂,使用replaceWith()方法替換類別名為 " green " 的<span>元素程奠,替換之后,舊元素完全由新替換的元素所取代祭钉。

使用 wrap() 和 wrapInner() 方法包裹元素和內(nèi)容

wrap()wrapInner()方法都可以進(jìn)行元素的包裹瞄沙,但前者用于包裹元素本身,后者則用于包裹元素中的內(nèi)容慌核,它們的調(diào)用格式分別為:

$(selector).wrap(wrapper)和$(selector).wrapInner(wrapper)

參數(shù) selector 為被包裹的元素距境,wrapper 參數(shù)為包裹元素的格式。

例如垮卓,調(diào)用wrap()方法垫桂,將<span>用<div>元素包裹起來(lái),如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出粟按,紅色區(qū)域的<span>元素被藍(lán)色邊框的<div>元素通過(guò)wrap()方法包裹起來(lái)诬滩。

使用 each() 方法遍歷元素

使用each()方法可以遍歷指定的元素集合,在遍歷時(shí)灭将,通過(guò)回調(diào)函數(shù)返回遍歷元素的序列號(hào)疼鸟,它的調(diào)用格式為:

$(selector).each(function(index))

參數(shù) function 為遍歷時(shí)的回調(diào)函數(shù),index 為遍歷元素的序列號(hào)庙曙,它從 0 開(kāi)始空镜。

例如,遍歷頁(yè)面中的<span>元素捌朴,當(dāng)元素的序列號(hào)為 2 時(shí)吴攒,添加名為 " focus " 的樣式,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出男旗,在使用each()方法遍歷<span>元素時(shí)舶斧,回調(diào)函數(shù)中的 " index " 參數(shù)為元素的序列號(hào),它從 0 開(kāi)始察皇,當(dāng)為 2 時(shí)茴厉,表示第 3 個(gè)<span>元素增加樣式泽台。

使用 remove() 和 empty() 方法刪除元素

remove()方法刪除所選元素本身和子元素,該方法可以通過(guò)添加過(guò)濾參數(shù)指定需要?jiǎng)h除的某些元素矾缓,而empty()方法則只刪除所選元素的子元素怀酷。

例如,調(diào)用remove()方法刪除<span>元素中類別名為 " red " 的嗜闻,如下圖所示:

在瀏覽器中顯示的效果:

從圖中可以看出蜕依,使用remove( " .red " )方法只是把<span>元素中類別名為 " red " 的這部分元素給刪除了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末琉雳,一起剝皮案震驚了整個(gè)濱河市样眠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌翠肘,老刑警劉巖檐束,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異束倍,居然都是意外死亡被丧,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門绪妹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)甥桂,“玉大人,你說(shuō)我怎么就攤上這事邮旷』蒲。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵廊移,是天一觀的道長(zhǎng)糕簿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)狡孔,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任蜂嗽,我火速辦了婚禮苗膝,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘植旧。我一直安慰自己辱揭,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布病附。 她就那樣靜靜地躺著问窃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪完沪。 梳的紋絲不亂的頭發(fā)上域庇,一...
    開(kāi)封第一講書(shū)人閱讀 52,158評(píng)論 1 308
  • 那天嵌戈,我揣著相機(jī)與錄音,去河邊找鬼听皿。 笑死熟呛,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的尉姨。 我是一名探鬼主播庵朝,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼又厉!你這毒婦竟也來(lái)了九府?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤覆致,失蹤者是張志新(化名)和其女友劉穎侄旬,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體篷朵,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡勾怒,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了声旺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片笔链。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖腮猖,靈堂內(nèi)的尸體忽然破棺而出鉴扫,到底是詐尸還是另有隱情,我是刑警寧澤澈缺,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布坪创,位于F島的核電站,受9級(jí)特大地震影響姐赡,放射性物質(zhì)發(fā)生泄漏莱预。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一项滑、第九天 我趴在偏房一處隱蔽的房頂上張望依沮。 院中可真熱鬧,春花似錦枪狂、人聲如沸危喉。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)辜限。三九已至,卻和暖如春严蓖,著一層夾襖步出監(jiān)牢的瞬間薄嫡,已是汗流浹背氧急。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留岂座,地道東北人态蒂。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像费什,于是被迫代替她去往敵國(guó)和親钾恢。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

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

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理鸳址,服務(wù)發(fā)現(xiàn)瘩蚪,斷路器,智...
    卡卡羅2017閱讀 134,693評(píng)論 18 139
  • 使用 attr() 方法控制元素的屬性 attr()方法的作用是設(shè)置或者返回元素的屬性稿黍,其中attr(屬性名)格式...
    孤傭閱讀 270評(píng)論 0 1
  • 明天資格復(fù)審?fù)晔潞笳钍荩鸵M(jìn)入面試的準(zhǔn)備工作了,看時(shí)間安排巡球,滿打滿算也就一個(gè)月的時(shí)間言沐,對(duì)于面試四道題而言,是遠(yuǎn)遠(yuǎn)不夠...
    阿_方閱讀 103評(píng)論 0 0
  • 晨練有感(平水韻) 文/清風(fēng) 鶯啼燕語(yǔ)又逢春酣栈,疾步平明健自身险胰。 滿眼麥田凝碧玉,連天細(xì)雨浥輕塵矿筝。 毿毿楊柳枝條綠起便,...
    清風(fēng)2閱讀 244評(píng)論 0 1
  • 真的有料(精選特色風(fēng)物特產(chǎn)的美食平臺(tái))在四川雅安铸史,拍攝記錄了中國(guó)扶貧基金會(huì)旗下組織善品公社鼻疮,通過(guò)幫助貧困戶提高種植...
    真的有料閱讀 437評(píng)論 0 0