JS中DOM元素的操作

时间:2020-08-17 19:32:38 来源:

【摘要】 JS中DOM元素的操作考必过小编为大家整理了关于JS中DOM元素的操作的信息,希望可以帮助到大家!

JS中DOM元素的操作

标签:报错   width   替换   样式   rem   setattr   sha   触屏   collect   

一、DOM元素的获取
1)document.getElementsByClassName ( “class”)
返回集 htmlcollection ,用法和数组一致
说明: class为DOM元素上class属性的值
2)document.getElementById( “id” )
功能:返回对拥有指定ID的第一个对象的引用
返回值: DOM对象
说明: id为DOM元素上id属性的值
3)document.getElementsByName(" name");
返回的是nodelist 类型, 用法和数组一致
说明: name为DOM元素上name属性的值
4)document.getElementsByTagName(“TagName”);
返回的是htmlcollection 集合 , 用法和数组一致
5) document.querySelector(".btnlist");
返回的是集合
document.querySelectorAll("#btn");
获取所有的#btn
6)document.body
可以直接获取body

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<button id="btn" class="btnlist" name="btn_n">点我一下</button>
<button id="btnn" class="btnof">点我一下</button>
<script>
    var btn =document.getElementsByClassName ("btnlist");
    console.log(btn[0]);

    var btn1=document.getElementsByName("btn_n");
    console.log(btn1[0]);

    var btn2=document.getElementById("btn");
    console.log(btn2);

    var btn3=document.getElementsByTagName("button");
    console.log(btn3[0]);

    var btn4=document.querySelector (".btnof");
    var btn5=document.querySelector ("#btnn");
    console.log(btn4);
    console.log(btn5);
   //querySelectorAll 返回的是集合
    var btn6=document.querySelectorAll ("#btnn");
    console.log(btn6[0]);

    /*可以直接获取body*/
    console.log(document.body);
</script>
</body>
</html>

1:修改属性
语法: ele.style.syleName=styleValue
功能:设置ele元素的CSS样式
2.获取对象的属性
console.log(btn1[0].style.height); //40px
3.js获取非行内样式属性(只读)
console.log(window.getComputedStyle(btn1[0]).width);

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        #btn{
            width:50px;
        }
    </style>
</head>
<body>
<button id="btn">点我</button>
<script>
    var btn1=document.getElementsByTagName("button");
    /*修改属性     -----js操作的属性都是行内样式 (设置或者获取)*/
    btn1[0].style.background="pink";
    btn1[0].style.height="40px";
    //获取对象的属性
    console.log(btn1[0].style.height); //40px

    //js获取非行内样式属性
    console.log(window.getComputedStyle(btn1[0]).width);

</script>
</body>
</html>

innerHTML
语法: ele.innerHTML
功能:返回ele元素开始和结束标签之间的HTML(获取标签的内容)
语法: ele.innerHTML=" html”
功能:设置ele元素开始和结束标签之间的HTML内容为html说明:
注:
不能使用”-”连字符形式font-size
使用驼峰命名形式:fontSize
className
语法: ele.className
功能:返回ele元素的class属性
注:
1.className是重新设置类,替换元素本身的class
2.如果元素有2个以上的class属性值,那么获取这个元素的className属性时,会将它的class属性值都打印出来

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>innerHTML</title>
    <style>
      .current{
            background-color:pink ;
            color:blue;
        }
        /*.on{border-bottom: 1px solid #7be052;}*/
    </style>
</head>
<body>
<p class="box" id="box">
    元素
</p>
<ul id="list">
    <li><i>前端开发</i></li>
    <li class="on"><b>java开发</b></li>
    <li>UI设计师</li>
</ul>
<script>
    //innerHTML   获取标签的内容
    var lis=document.getElementById("list").getElementsByTagName("li") ;  //数组形式
    console.log(lis);
    for(i=0,len=lis.length;i<len;i++){
        console.log(lis[i].innerHTML);
        lis[i].innerHTML =lis[i].innerHTML+‘程序‘;
        //className  返回ele元素的class属性
       lis[1].className ="current";  //className是重新设置类,替换元素本身的class
    }
     console.log(document.getElementById("box").className );
</script>
</body>
</html>


DOM属性设置与获取
获取属性(注意:这个函数获取的元素属性,而不是样式,属性是只,id,class,title等等)
语法: ele.getAttribute( “attribute” )
功能:获取ele元素的attribute属性
说明:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>Dom获取属性getAttribute</title>
</head>
<body>
    <p id="text"  class="text2" align="center" data-type="title" >文本</p>
    <input type="text" name="user" id="user" value="user" vaildata="user2">
    <script>
        //获取属性 getAttribute
    var p=document.getElementById("text");  // 获取p标签的内容
        console.log(p.id);  // text
        console.log(p.align);  // center
        console.log(p.className );  // text2   //class的获取使用className
        console.log(p.getAttribute("data-type") );  //   title
        console.log(p.getAttribute("class") );  //   text2
    var input=document.getElementById("user")    ;
         console.log(input.id);  // user
         console.log(input.getAttribute ("vaildata"));  // user2

         //设置属性  setAttribute
         //给p设置一个data-color 属性
         p.setAttribute("data-color","red");
         //给p设置一个irland 属性
         input.setAttribute("irland","false");

        //删除属性 removeAttribute
        //给p删除align属性
        p.removeAttribute("align");
        //给input删除name属性
        input.removeAttribute("name");
    </script>
</body>
</html>

Dom的HTML事件
HTML事件
直接在HTML元素标签内添加事件,执行脚本。
语法: <tag事件=“执行脚本”>
功能:在HTML元素上绑定事件。
说明:执行脚本可以是一个函数的调用。


 


1、ele是要操作的dom对象
2、attribute是要获取的html属性(如:id 、type)

设置属性
语法: ele.setAttribute(”attribute”,value)
功能:在ele元素上设置属性
说明:
1、ele是 要操作的dom对象
2、attribute为要设置的属性名称
3、value为设置的attribute属性的值
删除属性
语法: ele.removeAttribute(”attribute" )
功能:删除ele,上的attribute属性
说明:
1、ele是要操作的dom对象
2、attribute是要删除的属性名称

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>HTML事件</title>
    <style>
        .btn{
            width:140px;
            height:30px;
            line-height: 30px;
            font-size:14px;
            text-align: center;
            background-color: #7d83ff;
            color:#fff;
            border-radius: 5px;
            margin-top:30px;
            cursor: pointer;
        }
    </style>
</head>
<body>
    <!--onclick:鼠标滑过时触发-->
    <input type="button " value="弹 出"  onclick=" alert(‘我是一个按钮‘)">;
    <!--onmouseover:鼠标滑过调用onmouseover函数-->   <!--onmouseout :鼠标离开时触发-->
    <p id="btn" class="btn" onmouseover="mouseoverFn(this,‘#f00‘)" onmouseout="mouseoutFn(this,‘#0f0‘)">
        开始</p>
    <p id="btn" class="btn" onmouseover="mouseoverFn(this,‘pink‘)" onmouseout="mouseoutFn(this,‘#ff0‘)">
        结束</p>
<script>
    //传参   onmouseover="mouseoverFn(this,‘#0f0‘)" 给  mouseoverFn(btn,bgColor)传参
    function mouseoverFn(btn,bgColor){
        //鼠标滑过,背景变为红色
        btn.style.background=bgColor ;
    }
    //传参   onmouseout="mouseoutFn(this,‘#0f0‘)" 给  mouseoutFn(btn,bgColor)传参
    function mouseoutFn(btn,bgColor){
        //鼠标滑过,背景变为#00f
        btn.style.background=bgColor;
    }
</script>
</body>
</html>




DOM的鼠标事件

关于this指向
在事件触发的函数中, this是对该DOM对象的引用。

键盘事件

JS中DOM元素的操作

标签:报错   width   替换   样式   rem   setattr   sha   触屏   collect   

以上就是JS中DOM元素的操作的内容,更多资讯请及时关注考必过网站,最新消息小编会第一时间发布,大家考试加油!

上一篇      下一篇
前端相关推荐 更多>>
前端热点专题 更多>>
热点问答
国家公务员考试年龄限制是多少 公务员国考和省考考试内容有什么区别 函授大专学历能不能考公务员 国家公务员考试考点能自己选择吗 新闻学专业能报考2022年公务员考试吗 什么是联合培养研究生 什么是破格录取研究生 什么人不适合读研 研究生报名户口所在地填什么 研究生结业和毕业有什么区别
网站首页 网站地图 返回顶部
考必过移动版 https://m.kaobiguo.net