web前端

1.15 初识DOM

2020-08-11  本文已影响0人  NULL_2022

DOM


DOM 树


DOM本质


节点

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>初始DOM对象</title>
</head>
<body>
    <!-- 我是注释 -->
    <h1>Dom很好玩</h1>
</body>
</html>

节点树

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>初始DOM对象</title>
</head>
<body>
    <!-- 我是注释 -->
    <h1>DOM很好玩</h1>
    <script>
        console.log(document.documentElement);//=> 返回root根节点,html标签包含的所有子节点
        console.log(document.doctype);//=> <!DOCTYPE html>
        console.log(document.head);//=> 整个head
        console.log(document.title);//=> 返回的是页面标题文本:初始DOM对象
        console.log(document.body);//=> 返回页面主题body元素节点及所有子节点
    </script>
</body>
</html>

常见获取DOM元素的方法:

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>初始DOM对象</title>
</head>
<body>
    <div class="box" id="box">
        <h2 class="title" >前端课程体系</h2>
        <ul>
            <li>HTML5+CSS3</li>
            <li>JavaScript(ES6)基础知识、核心原理、项目实战、组件封装、设计模式等</li>
            <li>Ajax、HTTP</li>
            <li>Vue、React、小程序开发</li>
            <li>Webpack、node、git等常用的工具类</li>
        </ul>
    </div>
    <script>
         //=> 基于js获取到的DOM元素是“对象数据类型”值,里面包含很多浏览器自带的,用来操作元素的键值对,
        let box = document.getElementById('box');
        //获取box中所有的li
        let itemList = box.getElementsByTagName('li');//=>获取box中所有的li 获取的是HTMLCollection元素集合
        console.log(itemList);//=> 它是一个类数组,结构和数组非常的相似,但是不是数组
        let title = box.getElementsByTagName('h2');
        console.log(title);//=>获取box盒子中所有的h2,获取到的是元素集合HTMLCollection,即使只有一个h2标签,也是获取的元素集合
        /*使用JS实现奇数和偶数行变色(CSS中:nth-child可以实现)*/
        for(let i = 0 ; i < itemList.length; i++){
            let itemLi = itemList[i];
            /*
                解析:
                    第一行 奇数行 => 索引0  索引偶数
                    第二行 偶数行 => 索引1  索引奇数
                    第三行 奇数行 => 索引2  索引偶数
                    ……
                可得:索引奇数代表偶数行 
            */
            i % 2 !== 0 ? itemLi.style.backgroundColor = 'skyBlue' :  itemLi.style.backgroundColor = 'lightgreen';
           
        }
    </script>
</body>
</html>
上一篇 下一篇

猜你喜欢

热点阅读