day02

作者: xusong__ | 来源:发表于2018-07-05 20:13 被阅读0次

    A.今天你学到了什么

    1. 'js'的各种使用方法

    1.1通过点击按钮直接更改元素的背景颜色
     <script>
            /* 
            修改样式
            element.style.attr=value;
             */
            var btn = document.getElementById("btn");
            var p = document.getElementById("p");
            btn.onclick = function(){
                p.style.background= "red";
            }
        </script>
    
    
    1.2 隔行变色
    <body>
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li>5</li>
        </ul>
        <script>
            var lis = document.getElementsByTagName("li");
            for (let i = 0; i < lis.length; i++) {
                if (i % 2 == 0) {
                    lis[i].style.backgroundColor = "red"
                } else {
                    lis[i].style.backgroundColor = "green"
                }
            }
        </script>
    </body>
    
    1.3 通过点击按钮,显示隐藏元素
    <body>
        <div id="div" style="display:block">
    
        </div>
        <button id="btn">
            toggle
        </button>
        <script>
            var btn = document.getElementById("btn");
            var div = document.getElementById("div");
            btn.onclick = function(){
                let value = div.style.display;
                if(value == "block"){
                    div.style.display = "none"
                } else{
                    div.style.display = "block"
                }
            }
        </script>
    </body>
    
    1.4通过点击按钮,添加class名更改元素属性
     <style>
            .current{
                color: red;
            }
        </style>
    <p id="p">
            hello world
        </p>
        <button id="btn">btn</button>
        <script>
            var btn=document.getElementById("btn");
            var p=document.getElementById("p");
            btn.onclick=function(){
                 p.className="current";
           }
        </script>
    
    1.5获得文本节点
    <!--获得文本节点  -->
        <p>hello world  <span>
            good
        </span></p>
        <script>
            var p=document.getElementsByTagName("p")[0];
            var nodeCondent=p.textContent;
            console.log(nodeCondent);
        </script>
    
    1.6不同节点的返回类型
        <!-- 
            nodeType 节点类型的返回值
            1.元素节点
            2.属性节点
            3.文本节点
         -->
        <p class="one" id="p">hello world</p>
        <script>
            var p =document.getElementById("p");
            var eNode=p.nodeType;
            var tNode=p.firstChild.nodeType;
            var attrNode=p.getAttributeNode("class").nodeType;
            console.log(eNode);
            console.log(tNode);
            console.log(attrNode);
        </script>
    
    1.7 在元素后增加节点
     <!-- 在之后添加节点 -->
        <div id="parent">
            <p>hello world</p>
        </div>
        <button id="add">add</button>
        <script>
            var add=document.getElementById("add");
            var parent =document.getElementById("parent");
            add.onclick = function() {
                let p=document.createElement("p");
                let txt=document.createTextNode("first");
                p.appendChild(txt);
                parent.appendChild(p);
            }
        </script>
    
    1.8在元素前增加节点
    <!-- insertBefore 
            语法:parentNode.insertBefore(assNode,targetNode)
            createElement()创造元素节点
            createTextNode() 创造文本节点
        -->
            <div id="parent">
                    <p id="one">hello world</p>
                </div>
                <button id="add">add</button>
                <script>
                    var add=document.getElementById("add");
                    var parent =document.getElementById("parent");
                    var one=document.getElementById("one");
                    add.onclick = function() {
                        let p=document.createElement("p");
                        let txt=document.createTextNode("first");
                        p.appendChild(txt);
                        parent.insertBefore(p,one);
                    }
                </script>
    
    1.9删除节点
        <ul id="parent">
            <li>hello world</li>
        </ul>
        <button id="btn">btn</button>
        <script>
            var btn=document.getElementById("btn");
            var  parent=document.getElementById("parent");
            var li =document.getElementsByTagName("li")[0];
            btn.onclick=function(){
                parent.removeChild(li);
            }
    
        </script>
    
    2.0 替换节点
    <div id="parent">
                <p id="child">hello world</p>
        </div>
        <button id="btn">btn</button>
        <script>
            var btn=document.getElementById("btn");
            var  parent=document.getElementById("parent");
            var child=document.getElementById("child"); 
            btn.onclick=function(){
                let h4=document.createElement("h4");
                let txt=document.createTextNode("修改");
                h4.appendChild(txt);
                parent.replaceChild(h4,child);
            }
        </script>
    
    2.1克隆节点
    <p>hello world</p>
        <script>
            var p=document.getElementsByTagName("p")[0];
            var cp=p.cloneNode(true);
            document.body.appendChild(cp);
        </script>
    

    2.2 事件中的得到和失去焦点

    <!-- 
            onfocus  获取焦点
            onblur 失去焦点
            this 表示 正在执行事件的对象-->
        <input type="text" id="input">
        <script>
            var input=document.getElementById("input");
            input.onfocus=function(){
                this.style.background="red";
    
            }
            input.onblur=function(){
                this.style.background="green";
            }
        </script>
    
    2.3 鼠标的应用事件
     <p id="test">hello world</p>
        <script>
            // onmouseover 鼠标移到某元素上
            // onmouseout 鼠标离开某元素
            var test=document.getElementById("test");
            test.onmouseover = function(){
                this.style.color="red";
    
            }
            test.onmouseout = function(){
                this.style.color="green";
    
            }
        </script>
    
    2.4 window.onload
    <script>
            // window.onload  整个dom树以及相关图片资源加载完成后,执行相关代码
            window.onload=function(){
            var p=document.getElementsByTagName("p")[0];
            console.log(p);
            }
        </script>
    </head>
    <body>
        <p>hello world</p>
    
    2.5 改变域
    <input type="text">
        <script>
            // onchange 域的内容发生改变时触发
            var input=document.getElementsByTagName("input")[0];
            input.onchange=function(){
                this.value="change";
            }
        </script>
    
    2.6 提交表单
     <form action="">
            <input type="text">
            <button type="submit">提交</button>
        </form>
        <script>
            var submit=document.getElementsByTagName("form")[0];
            submit.onsubmit=function(){
                albert("提交表单");
            }
        </script>
    
    2.7 resize
    <div>
    //需要设置大小,背景
        </div>
        <script>
            window.onresize=function(){
                alert("浏览器窗口改变时触发");
            }
            window.onscroll=function(){
                alert("窗口滚动时触发");
            }
    
    2.8 key
    <p>你还可以输入<em id="show">0</em>/150个字</p>
        <textarea id="text" cols="30" rows="10"></textarea>
        <script>
            // 键盘按下时触发
            // document.onkeydown=function(event){
            //     alert(event.keyCode);
            // }
            //在键盘按键松开时触发
            // document.onkeyup=function(event){
            //     alert(event.keyCode);
            // }
            //键盘按下并释放一个键时触发
            // document.onkeypress=function(event){
            //     alert(event.keyCode);
            // }
                let show =document.getElementById("show");
                let text=document.getElementById("text");
                text.onkeyup=function(){
                    let length =text.value.length;
                    show.innerHTML=length;
                }
        </script>
    
    2.9 window
     <script>
        
           var a =10;
           console.log(window.a);
           function b(){
               console.log(this);
           }
           window.b();
       </script>
    
    3.0 confirm
    <div>
            <span id="mi">小米8
                <button id="btn">btn</button>
            </span>
        </div>
        <script>
            // confirm 有返回值 确定 》 true   取消》false
            // window.confirm("是否取消");
            let btn=document.getElementById("btn");
            let mi=document.getElementById("mi");
            btn.onclick=function(){
                var result =window.confirm("你确定不要小米8了吗");
                if(result){
                    mi.style.display="none"
                }else{
                    mi.style.display="block";
                  
                }
            }
        </script>
    
    
    

    相关文章

      网友评论

          本文标题:day02

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