• DHTML


     DHTML的原理:

    在DHTML中,将所有的HTML元素都是用一个一个的JS对象来进行表示,使用对象来表示元素本身,使用对象之间的包含关系来表示元素之间的层级关系

    DHTML可以分为两个部分,分别是BOM和DOM

    BOM : Browser Objcet Model 浏览器 对象模型(例如获取浏览器地址)

    DOM: Document Object Model 文档对象模型

     

    一。如下为DOM:

    1.如何获取 html 元素

    //1通过id获取用户名输入框元素,若id有重复的,则返回第一个
    var inp = document.getElementById("id");
    //通过用户名输入框获取输入框的值
    var value1 = inp.value;

    //2.通过name获取输入框的元素  name可以有多个,返回一个数组
    var eles = document.getElementsByName("password");
    var ele = eles[0];
    ele.value;

    //3.通过标签名获取所有的input元素的value值
    var arrInps = document.getElementsByTagName("input");
    //遍历所有的input元素,获取input元素的值
    for(var i=0;i<arrInps.length;i++){
      arrInps.[i];
      arrInps.[i].value;
    }

    //4获取p标签内的html内容,在获取p标签中的文本内容
    //现获取p元素(根据id获取)
    var arrId = document.getElementById("id");
    //根据元素获取元素中的html内容
    arrId.innerHTML;
    //根据元素获取元素中的所有文本
    arrId.innerText;

    注意:一般的元素,比如:div/span/p/h1/img 是没有value属性的,只有表单项元素才具有value

    2.如何增删改 html 元素

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <link rel="stylesheet" href="css/new_file.css"/>
            <!--添加一个节点,添加一个div到body的最后面-->
            <script type="text/javascript">
                function addNode(){
                    //创建一个div元素
                    var newDiv = document.createElement("div");
                    newDiv.innerHTML="我是新来的";
                    newDiv.style.backgroundColor="darkgoldenrod";
                    newDiv.style.color="#fff";
                    //获取父元素
                    //也可以使用document.getElementByName("body");
                    var body = document.body;
                    //为body添加一个子元素
                    body.appendChild(newDiv);
                }
            </script>
            <!--删除一个节点-->
            <script type="text/javascript">
                function delNode(){
                    //获取id为a 元素
                    var arrchild = document.getElementById("a");
                    //获取父元素
                    //也可以使用document.getElementByName("body");
                    var body = arrchild.parentNode;
                    //为body删除一个子元素
                    body.removeChild(arrchild);
                }
            </script>
            <!--使用一个新元素替换一个元素-->
            <script>
                function replaceDiv(){
                    //创建一个新元素
                var arrDiv = document.createElement("div");
                arrDiv.innerHTML = "我是来替换的";
                arrDiv.style.background = "red";
                //获取将要替换的子元素的父元素
                var arrb = document.getElementById("b");
                var parentDiv = arrb.parentElement;
                //替换
                parentDiv.replaceChild(arrDiv,arrb)
                }
            </script>
            <!--克隆节点、插入节点到指定元素的前面-->
            <script type="text/javascript">
                <!--克隆元素,并添加到body的最后面-->
                function copyDiv(){
                    var divd = document.getElementById("d");
                    //克隆一份
                    var copyDiv = divd.cloneNode(true);
                    //获取body元素,并放在body的最后面
    //                var body = document.body;
    //                body.appendChild(copyDiv);
                    //放在指定的div的前面
                    var arra = document.getElementById("a");
                    document.body.insertBefore(copyDiv,arra);
                }
            </script>
            
            
            
        </head>
        <body>
            <div id="a">is ok !!!</div>
            <div id="b">is ok !!!</div>
            <div id="c">is ok !!!</div>
            <div id="d">is ok !!!</div>
            <br /><hr />
            <span onclick="addNode()">添加一个框</span>
            <span onclick="delNode()">删除一个框</span>
            <span onclick="replaceDiv()">替换一个框</span>
            <span onclick="copyDiv()">克隆一个框</span>
        </body>
    </html>

    二。BOM浏览器对象模型

    1.  window

    window表示浏览器中一个打开的窗口

    1.1 alert方法  定义一个消息对话框
    window.alert("hello");  window可以不写

    1.2 confirm方法  第一一个确认的对话框
    var res = window.confirm("hello");
    if(res){  //true 确定
      alert("...");
    }else{  //false 取消
      alert("...");
    }

    1.3 setInterval方法和 clearInterval 方法
    setInterval  定义一个定时器
    clearInterval  清除一个定时器

    1.4 setTimeout方法 和 clearTimeout方法
    setTimeout  定义一个一次性的定时器
    clearTimeout  清除一次性定时器

    1.5 onload  文档就绪时间

  • 相关阅读:
    模块与包的导入
    递归
    day04
    装饰器2_根据认证来源判断用户和计算登录时间
    装饰器1_统计时间函数装饰欢迎登录函数
    tail -f a.txt | grep 'python'
    函数
    内置函数1
    python模块整理
    VBS恶作剧代码
  • 原文地址:https://www.cnblogs.com/gxlaqj/p/11376121.html
Copyright © 2020-2023  润新知