js获取节点

获取节点

1层级节点

<ul>
    <li id="li1">1</li>
    <li>2</li>
    <li id="li3">3</li>
    <li>4</li>
    <li>5</li>
        
 </ul>
 
<script>
 
    //获取id名为li1的元素赋值给li1
    let li1=document.getElementById(li1)
    //返回父节点:parentNode
    let par=li1.parentNode
    //给父节点添加1像素红色实线边框
    par.style.border='1px solid red'
 
 
    //获取所有子节点的集合:childNodes
    let nodes=par.childNodes
    // 第一个子节点文本颜色改为红色
    nodes[1].style.color='red'
 
    //第一个子节点:firstChild
    let frist=par.firstChild
 
    //最后一个节点:lastChild
    let last=par.lastChild
 
    //上一个:previousSibling
    let li3=document.getElementById('li3')
    console.log(li3.previousSibling)
    
    //下一个:nextsibling
    console.log(li3.nextsibling)
</script>

通过获取父节点修改第一个子节点和最后一个子节点元素

 <ul>
        <li id="li1">1</li>
        <li>2</li>
        <li id="li3">3</li>
        <li>4</li>
        <li>5</li>
        
 </ul>
 
<Script>
        // 获取父节点
        let p=document.getElementsByTagName('ul')[0]
        p.firstElementChild.style.border='1px solid blue'
        p.lastElementChild.style.border='1px solid blue'
</script>

2通过点击单选按钮,实现图片的切换

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="radio" name="book" value="图书1">图书1
    <input type="radio" name="book" value="图书2">图书2
    <br>
    <img src="" alt="" height="300px" width="500px">
    <p></p>
    <script>
        let img=document.querySelector('img')
        let p=document.querySelector('p')
        document.getElementsByName('book')[0].onchange=function(){
            img.setAttribute('src','img/1.jpg')
            let val=document.getElementsByName('book')[0].value
            p.innerHTML=val
        }
        document.getElementsByName('book')[1].onchange=function(){
            img.setAttribute('src','img/2.jpg')
            let val=document.getElementsByName('book')[1].value
            p.innerHTML=val
        }
    </script>
</body>
</html>

3追加元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="radio" name="book" value="图书1">图书1
    <input type="radio" name="book" value="图书2">图书2
    <br>
    <!-- <img src="" alt="" height="300px" width="500px"> -->
    <p></p>
    <script>
        let p=document.querySelector('p')
        document.getElementsByName('book')[0].onchange=function(){
            // 创建一个node
            let img=document.createElement('img')
            img.setAttribute('src','img/1.jpg')
            img.style.height='200px'
            // 追加元素
            p.appendChild(img)
        }
        document.getElementsByName('book')[1].onchange=function(){
           // 创建一个node
           let img=document.createElement('img')
            img.setAttribute('src','img/2.jpg')
            img.style.height='200px'
            // 追加元素
            p.appendChild(img)
        }
    </script>
</body>
</html>

4通过父元素删除子节点

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>删除</title>
</head>
<body>
    <img src="img/1.jpg" alt="">
    <script>
        document.querySelector('img').onclick=function(){
            let img=document.querySelector('img')
            // 需要通过父元素,才能删除
            img.parentNode.removeChild(img)
        }
    </script>
</body>
</html>
JavaScript 中,可以使用 getComputedStyle() 方法来获取节点的样式。该方法接受一个参数,即要获取样式的节点。 使用方法如下: ```javascript var element = document.getElementById('myElement'); // 获取节点 var styles = window.getComputedStyle(element); // 获取节点样式 ``` 当调用 getComputedStyle() 方法时,它会返回一个对象,包含了指定节点的所有样式属性和对应的值。可以通过对象的属性来访问节点的样式值,比如要获取节点的颜色属性可以使用 `styles.color`。 下面是一个例子,演示如何获取节点的样式值: ```html <!DOCTYPE html> <html> <head> <style> #myElement { width: 200px; height: 100px; background-color: red; color: white; font-size: 20px; } </style> </head> <body> <div id="myElement">Hello, World!</div> <script> var element = document.getElementById('myElement'); var styles = window.getComputedStyle(element); console.log('Width:', styles.width); // 输出节点的宽度值为 '200px' console.log('Height:', styles.height); // 输出节点的高度值为 '100px' console.log('Background color:', styles.backgroundColor); // 输出节点的背景颜色为 'rgb(255, 0, 0)' console.log('Color:', styles.color); // 输出节点的文本颜色为 'rgb(255, 255, 255)' console.log('Font size:', styles.fontSize); // 输出节点的字体大小为 '20px' </script> </body> </html> ``` 通过以上例子,我们可以看到,使用 getComputedStyle() 方法可以方便地获取节点的样式值,从而进行样式的修改和操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值