美文网首页
DOM 操作HTML、CSS、EventListener

DOM 操作HTML、CSS、EventListener

作者: 机器猫的百宝袋 | 来源:发表于2015-09-01 11:20 被阅读389次

DOM操作html###

1.改变html输出流:
注意:绝对不要再文档加载完成之后使用document.write()。这会覆盖该文档

eg:(会覆盖原文档)
<body>
    <p>Hello</p>
    <button onclick=“demo”>按钮</button>
    <script>
        function demo(){
            document.write(“World”);
        }
    </script>
</body>

2.寻找元素:
通过id找到html元素
通过标签名找到html元素
3.改变html内容:
使用属性:innerHTML

eg:
<body>
    <p id=“pid”>Hello</p>
    <button onclick=“demo()”>按钮</button>
    <script>
        function demo(){
            //通过id找到html元素
            var nv = document.getElementById(“pid”).innerHtML=“WS”;
            /*
                相同元素中的第一个元素
                document.getElementByTagName("p");
            */
        }
    </script>
</body>

4.改变HTML属性:
使用属性attribute:

<body>
        <a href="www.baidu.com" id="aid">网址</a>
        <button onclick="demo()">按钮</button>
        <script>
            function demo(){
                document.getElementById("aid").href = "www.google.com";
            }
        </script>
    </body>
DOM操作HTML元素详解######
    1.HTML DOM:当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)
    DOM 操作html:JS改变html元素、html属性、css样式、对页面中所有事件作出反应
            a.改变HTML输出流:
                注意:不要再文档加载完成之后使用document.write()。这会覆盖该文档
            b.寻找元素:
                通过ID 找到HTML元素         document.getElementById()
                通过标签名找到HTML元素       document.getElementsByTagName("p")      寻找相同元素中的第一个
            c.改变html内容:
                使用属性:innerHTML         document.getElementById().innerHTML= "";
            d.改变HTML属性:
                使用属性:attribute
                    <body>
                        <img id="imgid" src="1.png">
                        <script>
                            document.getElementById(“imgid”).src="8.png";
                        </script>
                    </body>
        方法:
            getElementsByName()         获取name          通过 元素的name标签
            getElementsByTagName()      获取元素           通过元素名 P
            getAttribute()              获取元素属性      getAttribute("属性名")
            setAttribute()              设置元素属性      setAttribute("属性名","属性值")
            childNodes()                访问子节点
            parentNode()                访问父节点
            createElement()             创建元素节点
            createTextNode              创建文本节点
            insertBefore()              插入节点
            removeChild()               删除节点
            offsetHeight                网页尺寸
            scrollHeight                网页尺寸
        <script>
        function getChildNode(){
            var childnode = document.getElementByTagName("ul")[0].childNodes;
            alert(childnode.length);
            alert(childnode[0].nodeType)
        }
        function getParentNode(){
            var div = document.getElementById("pid"); 
           alert(div.parentNode.nodeName);
        }
        get ParentNode();

        //创建元素节点
        function createNode(){
            var body = document.body;
            var input = document.createElement("input");
            input.type = "button";
            input.value = "按钮";
            body.appendChild(input);//在末尾插入
        }
        createNode();
        
        //insertBefore
        function addNode(){
            var div = document.getElementById("div");
            var node = document.getElementById("pid");
            var newNode = document.createElement("p");
            newNode.innerHTML = "动态添加第一个p元素";
            div.insertBefore(newNode,node);//insertBefore(插入的节点,相对位置)
        }

        //removeChild
        function removeNode(){
            var div = document.getElementById("div");
            var p = div.removeChild(div.childNodes[1]);
        }

        //offsetHeight
        function getSize(){
            var width = document.body.offsetWidth||document.documentElement.offsetWidth;
            var height = document.body.offsetHeight;
        }
        </script>

DOM操作css###

1.通过DOM对象改变CSS
    语法:document.getElementBuId(id).style.property=new style;
    <head>
        <style>
            .div{
                width:100px;
                height:100px;
                background-color:red;
            }
        </style>
    </head>
    <body>
        <div class = "div" id="div">
            hello
        </div>
        <button onclick="demo()">按钮</button>
        <script>
            function demo(){
                document.getElementById("div").style.background = "blue";
                document.getElementById("div").style.color = "blue";

            }
        </script>
    </body>

DOM 操作EventListener###

语法:document.getElementById(id).style.property=new style
Dom EventListener:
1.addEventListener(): 向指定元素添加事件句柄
2.removeEventListener(): 移除添加的事件句柄

                <button id="btn">按钮</button>
                <script>
                    var x = document.getElementById("btn");
                    x.addEventListener("click",hello);
                    x.addEventListener("click"world);
                    x.removeEventListener("click",hello);
                    x.removeEventListener("click",world);
                    function hello(){
                        alert("Hello");
                    } 
                   function world(){
                        alert("world");
                    }
                </script>

相关文章

网友评论

      本文标题:DOM 操作HTML、CSS、EventListener

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