zoukankan      html  css  js  c++  java
  • DOM学习笔记

    # DOM
     - JS的理解:
     
     - 要想操作HTML元素,那么就要将元素转换为js对象
       - 元素转换为对象的三个方式:

                  1.通过标记名(标签名):可以是多个标签
                  2.通过id属性:只可以是一个标签
                  3.通过name属性:可以是多个标签
       
       - 通过document中的三个方法:
                 
                  1.document.getElementsByTagName("div");
                  2.document.getElementById("id");
                  3.document.getElementsByName("name");
     
     - 元素转换为对象后,可以做什么?
       
          - 操做属性
            - 获取属性 obj.name
            - 设置属性 obj.name="";
          - 操作内容
            - 获取内容:obj.innerHTML或者obj.innerText;(表单元素)obj.value
            - 设置内容:obj.innerHTML="";  (表单元素)obj.value="";
          - 操作样式
            - 单独操作: obj.style.backgroundColor="red";
            -          obj.style.fontSize="10px";
            - 批量操作:
                     
                       <style>
                           .text{
                                100px;
                                height:100px;
                           }
                           .other{
                               font-size:10px;
                               background-color:red;
                           }
                       </style>  
                       //单个class样式
                       obj.className="text"; 
                       //多个class样式,中间用空格间隔
                       obj.className="text other"; 
                       //清空样式
                       obj.className="";
     
          - 补充:元素都有 id,class,style,name属性      


     - 全选,全不选,反选的代码:

              
            <script>
              //全选功能
              function sall(){
              //首先将元素转换为js对象
              var cnames = document.getElementsByName("ids[]");
              //alert(cnames.length);
              for(var i=0;i<cnames.length;i++){
                 //将复选框设置为选中状态 
                 cnames[i].checked=true;
               }
              }
            //取消全选功能
            function nall(){
             var cnames = document.getElementsByName("ids[]");
             for(var i=0;i<cnames.length;i++){
                //将复选框设置为 未选中状态
                cnames[i].checked=false;
             }
           }
           //反选
           function fall(){
              var cnames = document.getElementsByName("ids[]");
              for(var i=0;i<cnames.length;i++){
              //如果它之前为选中状态,cnames[i].checked就为true
                if(cnames[i].checked)
                 //此时设为 未选中状态
                 cnames[i].checked=false;
                 else
                 //此时设为 选中状态
                 cnames[i].checked=true;
             }
           }
            
            全选的另一种方式: 这里的obj跟java中的this用法类似
            function checkAll(obj){
            //alert(obj.checked);
            var cnames = document.getElementsByName("ids[]");
            for(var i=0;i<cnames.length;i++){
                //obj.checked=true:说明执行全选操作
                //obj.checked=false:说明执行取消全选操作
                cnames[i].checked=obj.checked;
            }
          }
        </script>

        <input type="text" name="name" value="aaaaa" onclick="GetValue()"/>
        <script>
          function GetValue(){
            //通过getElementsByName(...)获取的是数组,即使只获取了一个
            var value = document.getElementsByName("name")[0];
            alert(value.value);
          }
        </script>

  • 相关阅读:
    刷题19. Remove Nth Node From End of List
    刷题17. Letter Combinations of a Phone Number
    mysql图形化工具基本操作
    报错:ER_NO_DEFAULT_FOR_FIELD: Field 'status' doesn't have a default value
    express综合用法
    npm自定义上传
    node_第三方包下载文件package.jon详解
    正则表达式修改文字元素对齐方式
    初始化文章分类的方法 下拉的layui框
    标准git请求
  • 原文地址:https://www.cnblogs.com/yuefeng123/p/7341960.html
Copyright © 2011-2022 走看看