一、setAttribute() 方法
setAttribute() 方法為一個或一組元素添加指定的屬性,並且為其賦指定的值。(主要針對自定義屬性)
如果這個屬性已經存在,僅僅設置或是修改屬性值。
瀏覽器兼容性:所有主流瀏覽器都兼容
語法:
element.setAttribute(attributename,attributevalue)
參數:
attributename:添加的屬性名。必需
attributevalue:添加的屬性值。必需
返回值:無返回值
注意:
1、在HTML文檔中的HTML元素調用 setAttribute() 方法時,該方法會將其屬性名稱(attribute name)參數小寫。
2、如果指定的屬性已經存在,就修改或是傳遞屬性值。如果不存在,就創建指定的屬性。(該方法只能通過元素節點調用)
3、不存在的屬性,getAttribute() 返回 null。還是應該使用 removeAttribute() 代替 setAttribute('屬性名',null)來刪除屬性。
實例:
setAttribute用於設置在 li元素上的屬性。
HTML
<li>歌單</li>
<li>主播電台</li>
<li>排行榜</li>
JavaScript
var lis = tab_list.querySelectorAll('li'); for(var i=0;i < lis.length;i++){ lis[i].setAttribute('index',i); }
二、getAttribute() 方法
getAttribute() 方法返回元素上一個指定的屬性值。
如果指定的屬性值不存在,就返回 null 或是 ""(空字符串)。
瀏覽器兼容:所有主流瀏覽器均支持 getAttribute() 方法。
語法:
element.getAttribute(attributename)
參數:
attributename:需要獲得屬性值的屬性名稱。必需
返回值:
返回指定屬性的值(string類型)
注意:
1、當在HTML文檔中的HTML元素中調用此方法時,getAttribute() 方法會先將參數轉換為小寫形式。
2、當被指定的屬性不存在於元素之上是,所有瀏覽器都會返回 null。
3、當在被標記為 HTML 文檔中的一個 HTML 元素上調用此方法時,getAttribute()
會先將其參數轉換為小寫形式。
4、因此,如果一個屬性可能不存在於指定的元素上,在調用 getAttribute() 之前,你應該使用 element.hasAttribute() 來檢測該屬性是否存在。
實例:
JavaScript
function myFunction() { var a=document.getElementsByTagName("a")[0]; document.getElementById("demo").innerHTML=a.getAttribute("target"); }
其他更多自定義屬性操作:https://www.cnblogs.com/nyw1983/p/11817145.html