1. 程式人生 > >JavaScript HTML DOM增刪改查

JavaScript HTML DOM增刪改查

刪除 scrip color 沒有 id屬性 tag reat 添加 val

首先 js 可以修改HTML中的所有元素和屬性,它還可以改變CSS樣式,並且可以監聽到所有事件並作出響應,這篇筆記呢 主要記錄如何對HTML元素進行增刪改查。


1 查找DOM

第一種方式是我們最常用的:通過ID查找:

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <p id="demo">你能找到我麽?</p>
    <button onclick="changeText()"
>點擊改變文本</button> </body> {{--js--}} <script> function changeText(){ document.getElementById("demo").innerHTML = "ok"; } </script> </html>

註意:當我們寫HTML的時候盡量保證ID不重復。

第二種方法:通過標簽名查找

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</
title> </head> <body> <div id="demo"> <p>hi man</p> </div> <button onclick="changeText()">點擊改變文本</button> </body> {{--js--}} <script> function changeText(){ var element = document.getElementById("demo");
var p = element.getElementsByTagName("p"); p[0].innerHTML = "yo"; } </script> </html>

↑ 我們取到了ID為demo的div,然後在div中有個p元素 沒有ID屬性,我們就可以通過tagname來找到它。

第三種方法:通過class來查找

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <div class="demo">
        <p>hi man</p>
    </div>
    <button onclick="changeText()">點擊改變文本</button>
</body>
{{--js--}}
<script>
    function changeText(){
        var element = document.getElementsByClassName("demo")[0];
        var p = element.getElementsByTagName("p");
        p[0].innerHTML = "yo";
    }
</script>
</html>


2 刪除DOM

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <div id="div1">
        <p id="p1">hi man</p>
        <p id="p2">hello</p>
    </div>
    <button onclick="changeText()">點擊改變文本</button>
</body>
{{--js--}}
<script>
    function changeText(){
        var div1 = document.getElementById("div1");
        var p2 = document.getElementById("p2");
        div1.removeChild(p2);
    }
</script>
</html>


3 新增DOM

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <div id="div1">
        <p id="p1">hi man</p>
        <p id="p2">hello</p>
    </div>
    <button onclick="changeText()">點擊改變文本</button>
</body>
{{--js--}}
<script>
    function changeText(){
        // 創建P標簽
        var p = document.createElement("p");
        // 創建文本節點
        var node = document.createTextNode("新的P標簽");
        // 創建屬性
        var attr = document.createAttribute("class");
        attr.value = "class p";
        // p標簽中添加文本節點
        p.appendChild(node);
        // p標簽中添加屬性
        p.setAttributeNode(attr);
        
        
        var div = document.getElementById("div1");
        // 添加p標簽
        div.appendChild(p);
    }
</script>
</html>


4 修改DOM

4.1 修改DOM的內容

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <div id="div1">
        <p id="p1">hi man</p>
        <p id="p2">hello</p>
    </div>
    <button onclick="changeText()">點擊改變文本</button>
</body>
{{--js--}}
<script>
    function changeText(){
        var element = document.getElementById("p1");
        element.innerHTML = "更改內容";
    }
</script>
</html>

4.2 修改DOM的屬性

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <a href="https://www.baidu.com" id="link">鏈接</a>
</body>
{{--js--}}
<script>
    var element = document.getElementById("link");
    element.href = "https://www.google.com";
</script>
</html>

4.3 修改DOM的CSS樣式

<!DOCTYPE html>
<html>
<head>
    <title>learn javascript</title>
</head>
<body>
    <p id="p1">文本</p>
</body>
{{--js--}}
<script>
    var element = document.getElementById("p1");
    element.style.color = "red";
</script>
</html>

JavaScript HTML DOM增刪改查