9.15学习内容

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Day1</title>
    <style>
        .on{
            background-color: white;
        }
        .off{
            background-color: black;
        }
    </style>
</head>


<body class="on">
    <input type="button" value="内置js代码" onclick="alert('嘻嘻嘻')" />
    <input type="button" value="分离js代码" id= "btn">
    <script>
        //DOM
        //Document Object Model
        //BOM
        //Browser Object Model
        //
        //HTML文档--对象--标签--对象--元素--节点
        //
        //事件-注册事件-触发事件-响应事件-执行事件代码-事件结束
        //
        var obj = document.getElementById("btn");
        obj.onclick = function(){
            alert("哈哈哈");
        };
        //js代码最好不要写在head标签中,否则可能会因为找不到对象而报错
    </script>
    
    <!-- 案例 点击按钮显示图片-->
    <input type="button" value="显示图片" id="btn2">
    <div >
        <img src="" alt="" id="img" />
    </div>
    <script>
        document.getElementById("btn2").onclick = function(){
            var img = document.getElementById("img");
            // img.width = "500";
            // img.height = "500";            //要注意不能加单位,这样属性值会变成0!原因在于我们所赋值的类型应该为number类型,如果为其他值,会自动转换成0!
            img.style.width = "500px";
            img.style.height = "500px";    //用style方式即CSS方式修改时需要加单位
            img.src = "images/1.jpg";
        
        };
    </script>
    
    <!-- 案例:点击按钮修改p标签的内容 -->
    <p id="p1">这是一个p</p>
    <input type="button" value="修改标签内容" id="btn3">
    <script>
        var p1 = document.getElementById("p1");
        var btn3 = document.getElementById("btn3");
        btn3.onclick = function(){
            p1.innerText = "写入标签用innerText ="" "
        };
    </script>

    <!-- 案例    :点击按钮修改超链接 -->
    <input type="button" id="btn4" value="修改超链接">
    <a href="http://www.baidu.com" id = "a1" target="_black">百度一下</a>
    <script>
        document.getElementById("btn4").onclick = function(){
            var aObj = document.getElementById("a1");
            aObj.href = "http://www.google.com";
            aObj.innerText = "谷歌一下";
        };
    </script>
    <div id="div1">
        <p class="p2" >天王盖地虎</p>
        <p class="p2">天王盖地虎</p>
        <p>天王盖地虎</p>
        <p>天王盖地虎</p>
        <p>天王盖地虎</p>
        <input type="button" value = "修改前两行" id="btn5">
        <input type="button" value = "修改全部" id="btn6">
    </div>
    
    <!--  document.getElementsByClassName("")    根据类名获取元素返回的是伪数组-->
    <script>
        document.getElementById("btn5").onclick = function(){
            var pObj = document.getElementsByClassName("p2");
            for(var i=0; i<pObj.length; i++){
                pObj[i].innerText = "小鸡炖蘑菇";
            }
        };
    </script>

    <!--  document.getElementsByTagName("")    根据标签获取元素返回的是伪数组-->
    <script>
        document.getElementById("btn6").onclick = function(){
            var pObj = document.getElementsByTagName("p");
            for(var i=0; i<pObj.length; i++){
                pObj[i].innerText = "宝塔镇河妖";
            }
        };    
        

            //发现把前面案例的p都改了
            //可以附加更加准确地获取标签
            //getElementsById("div1").getElementsByTagName("p")
    </script>

    
    <!-- 排他功能案例 -->
    <button>我是按钮</button>
    <button>我是按钮</button>
    <button>我是按钮</button>
    <button>我是按钮</button>
    <button>我是按钮</button>
    <button>我是按钮</button>
    <script>
        var btns = document.getElementsByTagName("button");//获取所有按钮
        for(var i = 0; i < btns.length; i++){    //为所有按钮添加事件
            btns[i].onclick = function(){
                //先把所有按钮复原
                for(var j = 0; j < btns.length; j++){
                    btns[j].innerText = "我是按钮";
                }
                //把被点击的按钮改变
                this.innerText = "我被点击了";        //特别注意,这里不能写btns[i].innerText = "";因为for循环实在页面加载结束就执行了,而点击事件被注册了还没有被触发。此时i已经变成了btn.length,以后触发事件的时候执行的是第113-117的代码,此时i还是btn.length,而不是被点击的那个按钮的索引
                //console.log(i);
            };
        }
    </script>

<!-- 案例    :DOM操作修改CSS样式 -->
    <div id="dv"></div>
    <input type="button" value="修改样式" id="btn7">

    <script>
        document.getElementById("btn7").onclick = function(){
            var dv = document.getElementById("dv");
            dv.style.width = "200px";
            dv.style.height = "200px";                //CSS的要加单位
            dv.style.backgroundColor = "pink";        //DOM操作修改CSS样式中带有-的属性,一律改成去掉-,首字母大写
        };

        //DOM操作中设置标签的类,不用class,而要用className
        //
        //
        //
        
    </script>
        

    <!-- 案例:网页开关灯 -->
    <input type="button" value="开关灯" id="btn8">

    <script>
        document.getElementById("btn8").onclick = function(){
        
            if(document.body.className == "on"){
                document.body.className = "off";
            }else {
                document.body.className = "on";
            }
        };
    </script>
    

        
</body>
</html>
原文地址:https://www.cnblogs.com/yucheng6/p/9657549.html