javascript DOM

DOM

DHTML:動態(tài)的HTML,不是新的語言,標準烁设、規(guī)范和橙,就是將現有的技術整合删窒,讓我們的網頁能夠實時變換-----DHTML=HTML+CSS+JS(DOM)

W3C DOM 標準分為3部分

  • 1砸彬、核心DOM:針對任何結構化文檔的標準模型颠毙,為任何符合W3C標準的文檔提供了同一個操作方法
  • 2、XML
  • 3砂碉、HTML DOM
    針對HTML文檔提供的標準模型
    提供的方式只能操作HTML文檔

一蛀蜜、DOM樹

HTML DOM將HTML文檔看做一個倒掛的樹狀結構,在HTML文檔中增蹭,所有的元素涵防、屬性、文本沪铭、注釋都會被看做樹狀結構的一個節(jié)點。

document

由JS解釋器負責創(chuàng)建偏瓤,每個頁面有且僅有一個document對象杀怠,document能對頁面中所有的元素進行訪問。

選取元素

主要是獲取頁面元素的相關方法
1厅克、通過HTML選取元素

*(1)赔退、通過ID選取元素
語法:document.getElementId('元素ID值')
在當前DOM樹中,根據元素ID证舟,獲取具體子元素
返回:對應的元素對象硕旗,可以稱之為DOM元素或者DOM對象

*(2)、通過標簽名 選取元素
語法:node.getElementByTagName(‘標簽名’)女责;
node:是一個元素對象
在node元素范圍內漆枚,查找滿足指定標簽名的子元素
document.getElementsByTagName("a"); //所有的a標簽

    <div id="d1">
       <span>span1</span>
       <span>span2</span>
    </div>
    <span>span3</span>
    var d1=document.getElementById("d1");
    d1.getElementsByTagName("span");
     
     返回:數組(動態(tài)集合)

*(3)、通過class選取元素
語法:element.className='important';

節(jié)點間關系

  • [ ] 父節(jié)點(parent node)
  • [ ] 子節(jié)點(child node)
  • [ ] 兄弟節(jié)點(sibling) DOM中所有的節(jié)點對象抵知,都具備一下屬性
    • [ ] 父子級關系
      parentNode:獲取當前節(jié)點的父節(jié)點
      childNodes:獲取當前節(jié)點下的所有子節(jié)點墙基,返回數組
      irstChild:獲取第一個子節(jié)點
      lastChild:獲取最后一個子節(jié)點
    • [ ] 平行關系
      previousSibling:獲取上一個兄弟節(jié)點 nextSibling:獲取下一個兄弟節(jié) previousElementSibling:獲取上一個 元素 兄弟節(jié)點 nextElementSibling:獲取下一個 元素
      兄弟節(jié)點

讀取和修改節(jié)點對象

  • 1软族、 元素內容
    • [ ] html內容
      屬性:innerHTML
      使用方法:元素對象。innerHTML
      var msg=xx.innerHTML; //獲取残制,并且包含里面的子標簽 xx.innerHTML=""; //賦值
    • [ ] 文本內容
      屬性:textContent
      作用:讀取或設置HTML標記的文本內容立砸,與HTML無關
      注意:IE8顯示有問題;
      解決方案:屬性:innerText
  • 2初茶、元素的屬性
    屬性集合:包含當前元素的所有屬性
    如何獲取屬性集合
    屬性:attributes
    使用方法:DOM對象.attributes
    返回:類數組對象
    • [ ] 1颗祝、讀取屬性值:
      1、element.attributes[下標].value
      2恼布、element.attributes["屬性名"].value
      3螺戳、element.getAttributeNode["屬性名"].value
      4、element.getAttribute("屬性名")
    • [ ] 2桥氏、設置/修改屬性值
      1温峭、element.setAttribute("屬性名稱","值");
    • [ ] 3、設置/修改屬性值
      1字支、元素.屬性名="值";
  • 3凤藏、元素樣式
    • [ ] 1、css定義方式
    1堕伪、內聯
    2揖庄、內部
    3、外部
    2欠雌、元素樣式
    1蹄梢、操作元素的行內樣式
JS中最常用的操作是訪問元素的內聯樣式
屬性:style
返回:CSSStyleDeclaration類型的對象
    該對象中,包含當前元素定義好的所有內聯樣式
通過樣式屬性名稱獲取或者修改當前元素的內聯樣式
CSS         JS
width           width
background-color    backgroundColod
border-bottom-color borderBottomColor

獲取樣式:element.style.屬性名 --> 返回的所有數據是string類型富俄,如果有單位的話禁炒,也會將單位一起返回
設置樣式:element.style.屬性名="value",設置的值也是字符串,如果帶單位霍比,需要將單位一同設置 2幕袱、獲取計算的樣式
計算的樣式:內部樣式表,外部樣式表中的屬性悠瞬,是經過計算的
計算的樣式
DOM: document.defaultView.getComputedStyle(domyuansu).屬性名;
IE:
元素對象.currentStyle.屬性; 3们豌、修改樣式表中的樣式
1、先獲取樣式表對象
var sheets = document.styleSheets;
var sheet=document.styleSheets[i]; 2浅妆、獲取樣式表中所有的樣式規(guī)則
var rules=sheet.cssRules || sheet.rules;

3望迎、獲取規(guī)則集合中,包含要修改屬性的規(guī)則
var rule = rules[i];
4凌外、獲取或設置規(guī)則中的屬性值

rule.style.屬性名="值";

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末辩尊,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子康辑,更是在濱河造成了極大的恐慌对省,老刑警劉巖蝗拿,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異蒿涎,居然都是意外死亡哀托,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門劳秋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仓手,“玉大人,你說我怎么就攤上這事玻淑∷悦埃” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵补履,是天一觀的道長添坊。 經常有香客問我,道長箫锤,這世上最難降的妖魔是什么贬蛙? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮谚攒,結果婚禮上阳准,老公的妹妹穿的比我還像新娘。我一直安慰自己馏臭,他們只是感情好野蝇,可當我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著括儒,像睡著了一般绕沈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上帮寻,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天七冲,我揣著相機與錄音,去河邊找鬼规婆。 笑死,一個胖子當著我的面吹牛蝉稳,可吹牛的內容都是我干的抒蚜。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼耘戚,長吁一口氣:“原來是場噩夢啊……” “哼嗡髓!你這毒婦竟也來了?” 一聲冷哼從身側響起收津,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤饿这,失蹤者是張志新(化名)和其女友劉穎浊伙,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體长捧,經...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡嚣鄙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了串结。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哑子。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖肌割,靈堂內的尸體忽然破棺而出卧蜓,到底是詐尸還是另有隱情,我是刑警寧澤把敞,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布弥奸,位于F島的核電站,受9級特大地震影響奋早,放射性物質發(fā)生泄漏盛霎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一伸蚯、第九天 我趴在偏房一處隱蔽的房頂上張望摩渺。 院中可真熱鬧,春花似錦剂邮、人聲如沸摇幻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽绰姻。三九已至,卻和暖如春引瀑,著一層夾襖步出監(jiān)牢的瞬間狂芋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工憨栽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留帜矾,地道東北人。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓屑柔,卻偏偏與公主長得像屡萤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子掸宛,可洞房花燭夜當晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內容

  • 什么是DOM死陆??唧瘾? DOM(Document Object Model 文檔對象模型)是針對HTML和XML文檔的...
    熒惑3_3閱讀 1,393評論 0 1
  • 前言 歸根結底措译,代碼都是思想和概念的體現别凤。沒人能把一種程序設計語言的所有語法和關鍵字都記住,可以查閱參考書來解決领虹。...
    朱細細閱讀 2,940評論 4 14
  • 目錄 1. 基本概念 1.1 Node類型 DOM1級定義了一個Node接口规哪,該接口由DOM中所有節(jié)點類型實現。這...
    王童孟閱讀 429評論 0 1
  • ??DOM(文檔對象模型)是針對 HTML 和 XML 文檔的一個 API(應用程序編程接口)。 ??DOM 描繪...
    霜天曉閱讀 3,655評論 0 7
  • 節(jié)點 節(jié)點類型 每個節(jié)點都有一個 nodeType 屬性猾蒂,用于表示節(jié)點類型均唉。nodeType 屬性返回節(jié)點的類型。...
    練曉習閱讀 448評論 0 4