zoukankan      html  css  js  c++  java
  • 行为样式结构相分离的页面

    行为  样式  结构相分离的页面

    JS        CSS       HTML

    DOM 0写法

    复制代码
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
        <table border="1" width="300px">
            <tr onmousemove="t1(0);" onmouseout="t2(0)"><td>1</td><td>2</td><td>3</td></tr>
            <tr onmousemove="t1(1);" onmouseout="t2(1)"><td>1</td><td>2</td><td>3</td></tr>
            <tr onmousemove="t1(2);" onmouseout="t2(2)"><td>1</td><td>2</td><td>3</td></tr>
        </table>
    
        <script>
            //DOM 0实现的效果
            function t1(n){
                var mytrs = document.getElementsByTagName('tr')[n];
                console.log(mytrs);
                mytrs.style.backgroundColor = "red";
            }
    
            function t2(n){
                var mytrs = document.getElementsByTagName('tr')[n];
                console.log(mytrs);
                mytrs.style.backgroundColor = "";
            }
        </script>
    </body>
    </html>
    复制代码
    Demo

    DOM 1写法

    复制代码
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <style>
        .c1{
            background-color: cadetblue;
             300px;
        }
    </style>
    <body>
        <div class="c1">
            <table border="1" width="300px">
            <tr><td>1</td><td>2</td><td>3</td></tr>
            <tr><td>1</td><td>2</td><td>3</td></tr>
            <tr><td>1</td><td>2</td><td>3</td></tr>
        </table>
        </div>
    
    
    
        <script>
            //DOM 1实现的效果
            var myTrs = document.getElementsByTagName("tr");
            var len = myTrs.length;
            for(var i=0;i<len;i++){
                myTrs[i].onmouseover = function(){  //绑定事件
                   this.style.backgroundColor = "red"; //谁调用这个函数,这个this就指向谁
                }
                myTrs[i].onmouseout = function(){
                    this.style.backgroundColor = "";
                }
    
            }
    
        </script>
    </body>
    </html>
    复制代码
    Demo

    第一种非常低效,每次都要在标签上绑定。

    第二种相对高效一点,首先获取DOM对象,然后一次绑定。

  • 相关阅读:
    Servlet学习总结
    Tomcat学习总结1
    第44周星期日反思
    第44周星期一Tomcat学习2
    第44周星期五忙碌文档的一天
    第44周星期六好文章摘录
    laravel 5.6接入微信第三方授权登陆的主要步骤
    laravel多表登录出现路由调用错误
    cURL error 60: SSL certificate problem...
    传说中Python最难理解的点|看这完篇就够了(装饰器)
  • 原文地址:https://www.cnblogs.com/xzlive/p/12449686.html
Copyright © 2011-2022 走看看