以前我們有需要用js或jquery的一些方法hasClass、addClass、removeClass,在一個元素的class屬性上添加或者刪除某幾個類,達到某種樣式變化的需求,但還是稍微麻煩了一些。
h5新增的classList可以讓我們更方便的元素的類名進行操作。
注意classList兼容性有些差,不兼容ie10以下的ie瀏覽器。
示例
<!DOCTYPE html><html><head> <meta charset=utf-8> <title>classList</title> <style> .mystyle { width: 300px; height: 50px; background-color: red; color: white ; font-size: 25px; } </style></head><body><p>點擊按鈕為DIV元素添加mystyle 類。 </p><button onclick=myFunction()>點我</button><div id=myDIV> 我是一個DIV 元素。 </div><script> function myFunction() { document.getElementById(myDIV).classList.add(mystyle); }</script></body></html>新增類
使用add方法,你可以往頁面元素是新增一個或多個類:
document.getElementById(myDIV).classList.add(mystyle);刪除一個類
使用remove方法,你可以刪除單個CSS類:
document.getElementById(myDIV).classList.remove(mystyle);在元素中切換類名
在元素中切換類名。使用toggle方法,語法:toggle(class, true|false)
第一個參數為要在元素中移除的類名,並返回false。
如果該類名不存在則會在元素中添加類名,並返回true。
第二個是可選參數,設置布爾值用於設置元素是否強制添加或移除類,不管該類名是否存在。例如:
移除一個
document.getElementById(myDIV).classList.toggle(classToRemove, false);
添加一個
document.getElementById(myDIV).classList.toggle(classToAdd, true);
注意: Internet Explorer 或Opera 12 及其更早版本不支持第二個參數
檢查是否含有某個類使用contains方法,判斷某個類是否存在,返回布爾值。
//returns true or false document.getElementById(myDIV).classList.contains(myDIV);
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。