国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > JS > 正文

淺談JS讀取DOM對象(標簽)的自定義屬性

2024-05-06 16:32:59
字體:
來源:轉載
供稿:網(wǎng)友

DOM對象對于js來說,是個很基礎的元素,我們寫js一般來說,都一定會對它進行操作。我們可以很方便地給它加上自定義的屬性,比如:

<div id="test" class="hello"></div>var test = document.getElementById("test");test.adang = "adang";alert(test.adang);

我們會發(fā)現(xiàn),已經(jīng)給這個id為test的DOM元素添加了一個叫做adang的屬性了,然后在js中,可以調用這個屬性。我在寫js的時候經(jīng)常用到這種方法,可以很方便地對某個dom對象添加一些特殊的數(shù)據(jù),感覺DOM對象就像一個很好用的容器,可以放一堆數(shù)據(jù)進去。

進一步想到一個問題,這些屬性可以在js中添加,那么是否可以像flex一樣,在標簽中添加呢?事實上,像id啊,src啊這樣的屬性,都是可以在 js中添加,也可以在標簽上添加的,兩種方式js都可以獲取數(shù)據(jù)。這里要說一點,class比較特殊,標簽中用的是class,在js中調用卻要用 className才行。

像id啊,title,src此類html中支持的屬性,可以在標簽中設置,然后js訪問。那么,如果是像我上面例子中的adang這樣自定義的屬性呢?DOM可以訪問嗎?做了個實驗,如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title> new document </title><meta name="generator" content="editplus" /><meta name="author" content="" /><meta name="keywords" content="" /><meta name="description" content="" /></head><script type="text/javascript">window.onload=function(){  var test = document.getElementById("test");  test.adang = "adang";  alert(test.adang);}</script><body><div id="test"></div> </body></html>

用js來擴展自定義屬性,結果很正常地輸出了我們想要的結果,IE和FF下都正常。

然后我又寫了第二段代碼,如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title> new document </title><meta name="generator" content="editplus" /><meta name="author" content="" /><meta name="keywords" content="" /><meta name="description" content="" /></head><script type="text/javascript">window.onload=function(){  var test = document.getElementById("test");  alert(test.adang);}</script><body><div id="test" adang="adang"></div> </body></html>

這次把擴展的屬性寫到了html標簽上。IE下正常輸出adang,FF下輸出的是undefined。

但是很奇怪的,如果使用DOM提供的方法getAttribute(""),無論是在IE下,還是FF下,都可以得到我們寫在標簽中的自定義屬性。

所以,為了兼容,我們要使用getAttribute("")來獲取自定義的標簽屬性的值。

以上這篇淺談JS讀取DOM對象(標簽)的自定義屬性就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網(wǎng)。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 波密县| 观塘区| 霸州市| 唐海县| 黄平县| 武乡县| 定兴县| 财经| 句容市| 于都县| 柞水县| 区。| 雅江县| 滕州市| 名山县| 钦州市| 二手房| 满洲里市| 扬州市| 沐川县| 瑞丽市| 大石桥市| 旺苍县| 同德县| 基隆市| 冀州市| 平阴县| 毕节市| 博爱县| 连平县| 睢宁县| 长武县| 罗定市| 阿拉善右旗| 孝昌县| 左贡县| 巧家县| 巴中市| 偃师市| 汉中市| 镶黄旗|