dataset與setAttribute()、getAttribute()的區別

antzone發表於2017-04-13

本章節涉及到的主要概念可以參閱以下幾個文章:

(1).dataset可以參閱javascript dataset用法介紹一章節。

(2).setAttribute()可以參閱setAttribute()一章節。

(3).getAttribute()可以參閱getAttribute()一章節。

使用dataset可以設定元素的自定義屬性,使用setAttribute()和getAttribute()同樣是可以的。

其實從廣義來說,設定元素的自定義屬性可以有兩種方式,如下:

[HTML] 純文字檢視 複製程式碼
<div antozne="softwhy.com">螞蟻部落</div>

上面的程式碼自定義了一個antzone屬性,使用setAttribute()和getAttribute()可以操作。

[HTML] 純文字檢視 複製程式碼
<div data-antozne="softwhy.com">螞蟻部落</div>

上面也是一個自定義屬性,可以使用dataset、setAttribute()和getAttribute()操作。

兩者區別如下:

(1).dataset專業操作data方式定義屬性,而setAttribute()和getAttribute()操作所有的屬性。

(2).elem.dataset獲取的屬性是elem.attributes的子集。

相關文章