初識DOM(三)

在我們掌握了獲取特定元素的方法之后,我們還可以繼續想辦法獲取它的各個屬性(getAttribute方法)和更改節點屬性的值(setAttribute)。

1.getAttribute

getAttribute() 方法返回指定屬性名的屬性值。

使用方法:object.getAttribute(attribute)

它只有一個參數,就是你打算查詢的屬性的名字。

因為getAttribute方法不屬于document對象,所以不能通過document對象調用。它只能通過元素節點對象調用,所以我們這里就要用到getElementsByTagName方法。

還是用到之前的代碼:


在body中加入下面的代碼:


運行結果:

在代碼中,只有一個<p>元素,并且它有title屬性,所以alert對話框中顯示了一段文本就是這個<p>元素的title屬性的值。如若我將title的屬性值改成了空的,那么它會顯示什么呢?這里我就可以用到setAttribute方法來修改了。

2.setAttribute

setAttribute() 方法添加指定的屬性,并為其賦指定的值。

使用方法:object.setAttribute(attribute,value)

這個方法有兩個參數,第一參數是要修改的屬性的名字,第二個參數是屬性修改后的值。

現在我們把<p>元素的屬性修改為空的,進行下面的代碼修改:


運行結果:

? ? ? ?需要注意的是,通過setAttribute對文檔做出修改后,在通過瀏覽器的view source(查看源代碼)選項去查看文檔的源代碼時看到的仍將是改變前的屬性值,也就是說,setAttribute做出的修改不會反映在文檔本身的源代碼里。這種“表里不一”的現象源自DOM的工作模式:先加載文檔的靜態內容,再動態刷新,動態刷新不影響文檔的靜態內容。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容