dom擴張類名操作

  1. 類名操作:
    1. Node.classList.add('class') 添加class
    2. Node.classList.remove('class') 移除class
    3. Node.classList.toggle('class') 切換class,有則移除,無則添加
    4. Node.classList.contains('class') 檢測是否存在class

 


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .red{
            color:red
        }
        .green{
            color: green;
        }
        .blue{
            color: blue;
        }
        .underline{
            text-decoration: underline;
        }
    </style>
</head>
<body>
<ul>
    <li class="red">前端與移動開發</li>
    <li class="blue">java</li>
    <li>javascript</li>
    <li class="red">c++</li>
</ul>
<input type="button" value="爲第一個li元素添加樣式" id="add">
<input type="button" value="爲第二個li元素移除樣式" id="remove">
<input type="button" value="爲第三個li元素切換樣式" id="toggle">
<input type="button" value="判斷第四個li元素是否包含某個樣式" id="contain">
<script>
    window.onload=function(){
        /*add:爲元素添加指定名稱的樣式.一次只能添加一個樣式*/
        document.querySelector("#add").onclick=function(){
            /*classList:當前元素的所有樣式列表-數組*/
            document.querySelector("li").classList.add("red");
            document.querySelector("li").classList.add("underline");
            //document.querySelector("li").className="red underline"
            /*獲取樣式*/
            var result=document.querySelector("li").classList.item(2);
            console.log(result);
        }

        /*remove:爲元素移除指定名稱的樣式(不是移除class屬性),一次也只能移除一個*/
        document.querySelector("#remove").onclick=function(){
            document.querySelector(".blue").classList.remove("blue");
        }

        /*toggle:切換元素的樣式:如果元素之前沒有指定名稱的樣式則添加。如果有則移除*/
        document.querySelector("#toggle").onclick=function(){
            document.querySelectorAll("li")[2].classList.toggle("green");
        }

        /*contains:判斷元素是否包含指定名稱的樣式,返回true/false*/
        document.querySelector("#contain").onclick=function(){
            var isContain=document.querySelectorAll("li")[3].classList.contains("red");
            console.log(isContain);
        }
    }
</script>
</body>
</html>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章