下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1-文檔對(duì)象模型
動(dòng)態(tài)網(wǎng)頁的真正威力2015Spring,xi'an本章內(nèi)容文檔對(duì)象模型(DOM)DOMAPI選擇DOM元素getElementsByXXX()querySelector()NodeList節(jié)點(diǎn)列表動(dòng)態(tài)節(jié)點(diǎn)列表靜態(tài)節(jié)點(diǎn)列表文檔對(duì)象模型(DOM)文檔對(duì)象模型文檔對(duì)象模型是為HTML和XML文檔的API提供了文檔的結(jié)構(gòu)化表達(dá)能使開發(fā)者修改網(wǎng)頁的內(nèi)容和視覺呈現(xiàn)文檔對(duì)象模型(2)文檔對(duì)象模型由多個(gè)對(duì)象組成,用來操縱網(wǎng)頁所有的屬性,方法和事件都組織到對(duì)象中那些對(duì)象可通過編程語言和腳本訪問如何使用HTML頁面的DOM?寫JavaScript來與DOM交互JavaScript使用DOMAPI(每個(gè)瀏覽器都原生實(shí)現(xiàn))DOMAPIDOMAPIDOMAPI由對(duì)象和方法組成,用來與HTML頁面交互能添加和刪除HTML元素能動(dòng)態(tài)的應(yīng)用樣式能添加和刪除HTML屬性DOM引入對(duì)象來表示HTML元素和它們的屬性document.documentElement是<html>document.body是網(wǎng)頁的bodyDOM對(duì)象每個(gè)HTML元素有對(duì)應(yīng)的DOM對(duì)象類型HTMLLIElement代表<li>HTMLAudioElement代表<audio>這些對(duì)象都有相應(yīng)的屬性HTMLAnchorElement有href屬性HTMLImageElement有src屬性document對(duì)象是特殊對(duì)象代表DOMAPI的入口點(diǎn)HTML元素HTML元素有屬性,與其特性對(duì)應(yīng)id,className,draggable,style,onclick,等不同的HTML元素有特殊特性HTMLImageElement有屬性srcHTMLInputElement有屬性valueHTMLAnchorElement有屬性hrefHTML元素(2)HTML元素也有對(duì)應(yīng)其內(nèi)容的屬性innerHTML返回的字符串為不包含元素本身的元素內(nèi)容outerHTML返回的字符串為包含元素本身的元素內(nèi)容innerText/textContent返回的字符串為不包含標(biāo)簽的元素內(nèi)容DOM對(duì)象演示選擇DOM元素選擇HTML元素HTML元素可以使用DOMAPI找到并緩存至變量選擇單一元素選擇元素集合
使用預(yù)定義的元素集合varheader=document.getElementById('header');varnav=document.querySelector('#main-nav');varinputs=document.getElementsByTagName('li');varradiosGroup=document.getElementsByName('genders[]');varheader=document.querySelectorAll('#main-navli');varlinks=document.links;varforms=document.forms;使用getElementsBy方法DOMAPI包含了基于一些特征來選擇元素的方法通過Id通過Class通過標(biāo)簽名通過名稱
varheader=document.getElementById('header');varposts=
document.getElementsByClassName('post-item');vargendersGroup=
document.getElementsByName('genders[]');varsidebars=
document.getElementsByTagName('sidebar');document.getElementsBy演示querySelectorDOMAPI有用類似CSS選擇器的方法來找到和選擇HTML元素querySelector返回匹配選擇器的第一個(gè)元素querySelectorAll返回匹配選擇器的所有元素的集合不支持老瀏覽器(低于IE8)兩個(gè)方法都有字符串參數(shù)元素的CSS選擇器
varheader=document.querySelector('#header');//有id="header"的元素varnavItems=
document.querySelectorAll('#main-navli');//有id=main-nav的元素中包含的li元素
querySelector演示在其他元素中選擇元素DOMAPI能用于選擇其他元素中的元素選擇帶有id="wrapper"的元素內(nèi)所有的div所有方法能夠使用HTML元素特別是getElementById()varwrapper=document.getElementById('wrapper');vardivsInWrapper=wrapper.getElementsByTagName('div');選擇內(nèi)部元素
演示節(jié)點(diǎn)列表節(jié)點(diǎn)列表節(jié)點(diǎn)列表是返回的集合,通過DOM選擇器方法:getElementsByTagName(tagName)getElementsByName(name)getElementsByClassName(className)querySelectorAll(selector)vardivs=document.getElementsByTagName('div');varqueryDivs=document.querySelectorAll('div');for(vari=0;i<divs.length;i++){//做一些事情用divs[i]…}節(jié)點(diǎn)列表(2)節(jié)點(diǎn)列表看起來像數(shù)組,但不是數(shù)組是帶有屬性的對(duì)象,與數(shù)組類似有l(wèi)ength和indexer遍歷數(shù)組用for-in循環(huán):for(variindivs){console.log('divs['+i+']='+divs[i]);}//divs[0]=...//divs[1]=...//divs[length]=...//divs[item]=...節(jié)點(diǎn)列表演示靜態(tài)節(jié)點(diǎn)列表和動(dòng)態(tài)節(jié)點(diǎn)列表靜態(tài)節(jié)點(diǎn)列表和動(dòng)態(tài)節(jié)點(diǎn)列表有兩類節(jié)點(diǎn)列表getElementsBy…()返回動(dòng)態(tài)節(jié)點(diǎn)列表querySelectorAll()返回靜態(tài)節(jié)點(diǎn)列表動(dòng)態(tài)列表保有已選元素的蹤跡當(dāng)DOM改變時(shí)可反應(yīng)而靜態(tài)列表包含的元素,是執(zhí)行方法那一刻產(chǎn)生的(不隨DOM變化)牢記動(dòng)態(tài)節(jié)點(diǎn)列表比常規(guī)數(shù)組要慢為了更好的性能,需要緩存它的長度
靜態(tài)和動(dòng)態(tài)節(jié)點(diǎn)列表演示提問環(huán)節(jié)練習(xí)寫一個(gè)腳本,選擇在div元素中的所有的div節(jié)點(diǎn)創(chuàng)建函數(shù)使用querySelectorAll()創(chuàng)建函數(shù)使用getElemen
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店改造合同范例范例
- 戶外汽燈租賃合同范例
- 鋪位 租賃合同范例
- 快遞員合作合同范例
- 家具買賣貸款合同范例
- 市政材料供應(yīng)合同范例
- 含司機(jī)租車合同范例
- 鞋面批發(fā)采購合同范例
- 藥品合同范例格式
- 裝修固定總價(jià)合同范例
- 2024-2025學(xué)年高二上學(xué)期期末數(shù)學(xué)試卷(提高篇)(含答案)
- 2025年安全生產(chǎn)目標(biāo)實(shí)施計(jì)劃
- 福建百校2025屆高三12月聯(lián)考?xì)v史試卷(含答案解析)
- 2024年山西省建筑安全員《B證》考試題庫及答案
- 2023年益陽市安化縣招聘鄉(xiāng)鎮(zhèn)衛(wèi)生院護(hù)理人員筆試真題
- 《基于PLC的智能交通燈控制系統(tǒng)設(shè)計(jì)》10000字(論文)
- 首都經(jīng)濟(jì)貿(mào)易大學(xué)《微積分》2021-2022學(xué)年第一學(xué)期期末試卷
- 人音版音樂七年級(jí)上冊《父親的草原母親的河》課件
- 2024年度短視頻內(nèi)容創(chuàng)作服務(wù)合同3篇
- 介入治療并發(fā)癥
- 鑄牢中華民族共同體意識(shí)-形考任務(wù)1-國開(NMG)-參考資料
評(píng)論
0/150
提交評(píng)論