一、引言 初步認識DOM有可能會被各種不熟悉的因為因素影響自己的學習心態,你需要的是多去記憶一些單詞然後加強自己的代碼量。 二、導入 在昨天初步認識DOM以後我們見天將接著介紹有關於DOM的內容。 三、重點內容 ① 獲得或設置頁面的內容(innerText與innerHTML): 區別: a. 在獲 ...
一、引言
初步認識DOM有可能會被各種不熟悉的因為因素影響自己的學習心態,你需要的是多去記憶一些單詞然後加強自己的代碼量。
二、導入
在昨天初步認識DOM以後我們見天將接著介紹有關於DOM的內容。
三、重點內容
① 獲得或設置頁面的內容(innerText與innerHTML):
區別:
a. 在獲取頁面文本的時候,innerText只獲取標簽之間的文本信息,不包括其中的的標簽。而innerHTML是獲取標簽之間的所有內容包括標簽,而且瀏覽器會會將獲取的內容原樣輸出。innerHTML是所有瀏覽器都支持的沒有相容性的問題,而innerText是早期的IE瀏覽器(IE8之前)瀏覽器所支持的,火狐瀏覽器不支持,火狐只支持textContent。(現在的版本都支持了)
b. 在設置文本的時候,innerText會原樣輸出,裡面即使有標簽也渲染不出來,因為發生了轉移。innerHTML可以把字元串中的標簽按照HTML的標簽原樣的渲染呈現出來。
② 什麼是相容:
所謂的相容就是看當前的瀏覽器是否支持當前對象的屬性或者方法,如果支持就是相容,如果不支持就是不相容。
③ 常見的事件:
我們昨天介紹了什麼叫做事件,那麼在DOM中有哪些常見的事件呢?
以上就是我們會接觸到的一些事件,以及事件的使用說明。(建議找一些練習題自己稍微練習一下)
④ 自定義屬性:
在JS中我們不僅可以使用某些標簽的固有的屬性,我們還可以通過自定義的方式來定義屬於我們自己的標簽。下麵接受集中自定義標簽的方式
a. 可以直接給標簽添加屬性:
<input type="text" class="ip" id="txt" value="123" aa="456"/>
b.還可以通過JS來直接設置自定義屬性:
var txt = document.getElementById("txt"); txt.mm = "258"; // 是可以通過 JS來設置自定義屬性的
⑤ 節點
1. 在昨天的介紹中我們介紹了什麼就是節點,下麵我們來深入的介紹一下。
節點分為三類:標簽,屬性,文本,而他們分別都有著類型,名字,節點值。
標簽的節點:
標簽的節點類型: 1
標簽的節點名字: 對應的標簽名字
標簽的節點值 : null
屬性節點
屬性的節點類型: 2
屬性的節點名稱: 對應的屬性名稱
屬性的節點值: 對應的屬性值
文本的節點:
文本的節點類型: 3
文本的節點名字: #text
文本節點值: 對應的文本值,如果沒有,就是空
2. 兄弟(姐妹)節點: nextSibling或 nextElementSibling
var li = document.getElementById("li"); console.log(li.nextSibling); // 下一個緊鄰節點,chrome 火狐都支持的,只不過呢,有可能 會獲得文本節點,IE8及之前的瀏覽器會忽略空白文本節點,如果文本有內容,也會獲得到
console.log(li.nextElementSibling);// 谷歌和火狐都可以獲得下一個緊鄰的元素節點,而IE8及之前的版本不支持
3.上一個緊鄰的節點:previousSibling或previousElementSibling
onsole.log(li.previousSibling);// 上一個緊鄰節點,chrome 火狐都支持的,只不過呢,有可能 會獲得文本節點,IE8及之前的瀏覽器會忽略空白文本節點,如果文本有內容,也會獲得到
console.log(li.previousElementSibling);// 谷歌和火狐都可以獲得下一個緊鄰的元素節點,而IE8及之前的版本不支持
4.節點的層次
四、總結
今天的內容只要是用於事件,如果可以的話一定要找一些練習題練習。