使用HTML5的classList屬性操做CSS類

前言

之前咱們有須要用js或jquery的一些方法hasClass、addClass、removeClass,在一個元素的class屬性上添加或者刪除某幾個類,達到某種樣式變化的需求,但仍是稍微麻煩了一些。
h5新增的classList能夠讓咱們更方便的元素的類名進行操做。html

注意

classList兼容性有些差,不兼容ie10如下的ie瀏覽器。jquery

示例

<!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>

clipboard.png

新增類

使用add方法,你能夠往頁面元素是新增一個或多個類:瀏覽器

document.getElementById("myDIV").classList.add("mystyle");

刪除一個類

使用remove方法,你能夠刪除單個CSS類:spa

document.getElementById("myDIV").classList.remove("mystyle");

在元素中切換類名

在元素中切換類名。使用toggle方法,語法:toggle(class, true|false)
第一個參數爲要在元素中移除的類名,並返回 false。
若是該類名不存在則會在元素中添加類名,並返回 true。 code

第二個是可選參數,設置布爾值用於設置元素是否強制添加或移除類,無論該類名是否存在。例如:htm

移除一個ip

document.getElementById("myDIV").classList.toggle("classToRemove", false);

添加一個utf-8

document.getElementById("myDIV").classList.toggle("classToAdd", true);

注意: Internet Explorer 或 Opera 12 及其更早版本不支持第二個參數rem

檢查是否含有某個類

使用contains方法,判斷某個類是否存在,返回布爾值。get

//returns true or false
 document.getElementById("myDIV").classList.contains("myDIV");
相關文章
相關標籤/搜索