JavaScript(四)DOM及CSS操作

1、DOM简介

DocumentType: Html的声明标签

html 复制代码
<!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>
    <SCript>
        console.log(document);   // document代表整改文档
        if(document.nodeType ===9){
            console.log("顶层节点");
        }
    </SCript>
</body>
</html>

2、document对象获取元素






3、document对象创建元素


html 复制代码
<!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>
    <div class="nav">导航</div>
    <div id="contaniner"></div>

    <script>
        //创建元素
        var p_text = document.createElement("p");
        console.log(p_text);
        // 创建文本信息
        var p_content = document.createTextNode("Js创建文本信息");
        // appendChild:将内容或者子元素放到容器中
        p_text.appendChild(p_content);
        console.log(p_text);
        //创建属性
        var P_id = document.createAttribute("id");
        // 给属性赋值
        P_id.value = "darly";
        console.log(P_id);
        // 将属性设置到相应标签中
        p_text.setAttributeNode(P_id);
        console.log(p_text);

        //将创建的元素显示在页面上
        //首先获取需要放置的父级元素
        var contaniner = document.getElementById("contaniner");
        console.log(contaniner);
        contaniner.appendChild(p_text);
    </script>
</body>
</html>

4、Element属性




InnerHTML可以识别标签

innerText会把标签识别成一个字符串

5、获取元素位置


html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box{
            width: 200px;
            height: 200px;
            border: 5px solid red;
            padding: 10px;
            margin: 20px;
            background-color: green;
        }
        h1{
            height: 500px;
        }
    </style>
</head>
<body>
    <div class="box" id="boxid"></div>
    <h1>标题内容1</h1>
    <h1>标题内容2</h1>
    <h1>标题内容3</h1>
    <h1>标题内容4</h1>
    <h1>标题内容5</h1>
    <h1>标题内容6</h1>
    


    <script>
        //获取元素
        var boxobj = document.getElementById("boxid")
        //获取元素大小
        console.log(boxobj.clientHeight); //打印元素高度  包括pading值220(200+10+10)
        console.log(boxobj.clientWidth);  //打印元素宽度,包括pading值220(200+10+10)
        //获取视口高度(屏幕高度)
        console.log(document.documentElement.clientHeight);

        //获取网页总高度(页面高度,指页面内容高度,空白部分不算页面高度
        console.log(document.body.clientHeight);
        console.log("===clientHeight及clientWidth与scrollHeight和scrollWidth区别不大,\
                        实际应用场景中也很少将内容隐藏=========== ");


        console.log(boxobj.scrollHeight); //打印元素高度  包括pading值220(200+10+10)
        console.log(boxobj.scrollWidth);  //打印元素宽度,包括pading值220(200+10+10)
        //获取视口高度(屏幕高度)
        console.log(document.documentElement.scrollHeight);

        //获取网页总高度(页面高度,指页面内容高度,空白部分不算页面高度
        console.log(document.body.scrollHeight);
        
        console.log("================================");
        //scrollLeft和scrollTop
        //获取滚动高度
        console.log(document.documentElement.scrollTop);
        console.log("================================");

        //offsetHeight、offsetWidth
        console.log(boxobj.offsetHeight); //打印元素高度  包括pading和border值230(200+2*10+2*5)
        console.log(boxobj.offsetWidth);  

        console.log("================================");
        //offsetHeight、offsetWidth
        console.log(boxobj.offsetLeft); //左边距距离有定位的父级元素距离(有定位父级元素是指父级元素有position属性定义
        console.log(boxobj.offsetTop);  //上边距距离有定位的父级元素距离
    </script>

</body>
</html>

6、css操作(js操作css)


html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- <style>
        .box{
            width: 200px;
            height: 200px;
            background-color: red;
        }
    </style> -->
</head>
<body>
    <div class="box" id="boxid"></div>

    <script>
        var box= document.getElementById("boxid")
        //setAttribute操作CSS属性
        box.setAttribute("style","width:200px;height:200px;background:red")

        //通过元素节点的style属性设置
        box.style.width = "300px";
        box.style.height = "300px";
        box.style.backgroundColor = "red";

        //通过cssText设置
        box.style.cssText = "width:200px;height:200px;background:red";
    </script>
</body>
</html>
相关推荐
天外飞雨道沧桑13 小时前
TypeScript 中 omit 和 record 用法
前端·javascript·typescript
kkeeper~14 小时前
0基础C语言积跬步之深入理解指针(5下)
c语言·开发语言
一直不明飞行14 小时前
Java的equals(),hashCode()应该在什么时候重写
java·开发语言·jvm
盲敲代码的阿豪14 小时前
Python 入门基础教程(爬虫前置版)
开发语言·爬虫·python
basketball61615 小时前
C++ 构造函数完全指南:从入门到进阶
java·开发语言·c++
互联科技报15 小时前
2026超融合选型:Top5品牌与市场格局解读
开发语言·perl
weixin1997010801615 小时前
[特殊字符] 智能数据采集:数字化转型的“数据石油勘探队”(附Python实战源码)
开发语言·python
想唱rap15 小时前
IO多路转接之poll
服务器·开发语言·数据库·c++
暗冰ཏོ16 小时前
VUE面试题大全
前端·javascript·vue.js·面试
@杰克成16 小时前
Java学习30
java·开发语言·学习