美文网首页
JS基础语法-获取DOM元素

JS基础语法-获取DOM元素

作者: 翀鹰精灵 | 来源:发表于2022-02-11 10:38 被阅读0次

在HTML中,如涉及到对某个元素的修改,我们需要获取元素,通常有两种方法:

  • 1.利用DOM提供的方法获取元素
    document.getElementById()
    document.getElementsByTagName()
    document.getElementsByClassName()
    document.querySelector()
    小结:逻辑性不强、繁琐。父子级关系只能逐级获取。

  • 2.利用节点层级关系获取元素
    利用父(parentNode)子(childNodes) 节点关系获取元素;
    var sun_box = document.querySelector('.sun-box');
    console.log(sun_box.parentNode);
    var ul = document.querySelector('ul');
    console.log(ul.childNodes);
    小结:逻辑性强,但是兼容性稍差。

例1 : DOM获取元素

1.1 getElementById

<body>
    <div id="time"> 2022-2-9</div>
    <script>
        var timer = document.getElementById('time')
        console.log(timer);
    </script>
</body>

1.2 getElementsByTagName

<body>
    <ul>
        <li>知否知否应是绿肥红瘦</li>
        <li>知否知否应是绿肥红瘦</li>
        <li>知否知否应是绿肥红瘦</li>
        <li>知否知否应是绿肥红瘦</li>
        <li>知否知否应是绿肥红瘦</li>
    </ul>

    <script>
        // 返回的是获取过来元素对象的集合,以伪数组的形式存储的
        var lis = document.getElementsByTagName('li')
        console.log(lis);
    </script>
</body>

1.3 getElementsByClassName

<body>
    <div class="box">盒子1</div>
    <div class="box">盒子2</div>
    <script>
        // 根据类名获得某些元素集合
        var boxs = document.getElementsByClassName('box')
        console.log(boxs);
    </script>
</body>

1.4 getElementById

<body>
   <div>123</div>
   <script>
    // 获取事件源
    var div = document.querySelector('div');
   </script>
</body>

例2 : 节点层级关系获取元素

1.1 parentNode 父节点

<body>
    <!-- 栗子1:parentNode -->
    <div class="father-box">
        <span class="sun-box">
            <div class="grandson-box"></div>
        </span>
    </div>

  <script>
        var grandson_box = document.querySelector('.grandson-box');
        // 得到的是离元素最近的父级节点,如果找不到父节点,就返回为空
        console.log(grandson_box.parentNode);
        var sun_box = document.querySelector('.sun-box');
        console.log(sun_box.parentNode);
        var father_box = document.querySelector('.father-box');
 </script>
</body>

1.2 childNodes 子节点

<body>
    <ul>
        <li>我是li</li>
        <li>我是li</li>
        <li>我是li</li>
        <li>我是li</li>
        <li>我是li</li>
    </ul>

    <script>
         var ul = document.querySelector('ul');
        // var lis = ul.querySelectorAll('li');
        console.log(ul.childNodes);
    </script>
</body>

1.3 nextSibling 下一个兄弟节点、previousSibling 上一个兄弟节点

<body>
    <div>我是div</div>
    <div>我是span</div>
    <script>
        var div = document.querySelector('div');
        console.log(div.nextSibling);
        console.log(div.previousSibling);
    </script>
</body>

END!

相关文章

  • JS基础语法-获取DOM元素

    在HTML中,如涉及到对某个元素的修改,我们需要获取元素,通常有两种方法: 1.利用DOM提供的方法获取元素doc...

  • react基础入门:(二)原生JS操作DOM元素

    原文链接:react基础入门:(二)原生JS操作DOM元素 一 初始化项目 二 操作 DOM 获取 dom 元素 ...

  • 02-JQuery操作DOM

    一、JS获取DOM元素和JQuery获取DOM元素的区别 JavaScript获取的是DOM对象,而Jquery获...

  • DOM

    DOM JS的组成 ECMAScript js的基础语法 DOM 文档对象模型 BOM ...

  • 歌手页面右边shortcut的实现

    数据的获取(listview.vue) 获取index元素的方法封装(dom/js/dom.js) 给scroll...

  • Vue中ref属性获取DOM元素和组件引用

    ref获取DOM元素vue中获取DOM元素不建议用js直接操作DOM,使用ref可达到操作DOM的效果写法:thi...

  • dom元素高度、屏幕高度 获取

    原生js获取屏幕高度: jq获取屏幕高度: JS获取dom元素高度和宽度的方法如下:

  • Vue 中获取 DOM 元素问题

    Vue 获取DOM元素 获取元素 template 部分 js 部分 给元素添加事件 需要用到$nextTick ...

  • Dom

    JS的组成 ECMAScript js的基础语法 DOM 文档对象模型 BOM ...

  • DOM

    JS的组成 ECMAScript js的基础语法 DOM 文档对象模型 BOM ...

网友评论

      本文标题:JS基础语法-获取DOM元素

      本文链接:https://www.haomeiwen.com/subject/kngbkrtx.html