2021.11.5dom事件

 

一些 DOM 对象方法:

getElementById()     返回带有指定 ID 的元素。

getElementsByTagName()    返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组)

getElementsByClassName()   返回包含带有指定类名的所有元素的节点列表。

 

获取DOM元素的方法有几种:

通过ID获取(getElementById

例:document.getElementById('id')

通过name属性(getElementsByName)

例:document.getElementsByName('name')

通过标签名(getElementsByTagName)

例:var obj = document.getElementsByTagName('div');

通过类名(getElementsByClassName)

例:var obj = document.getElementsByClassName('animated')

获取html的方法(document.documentElement)

document.documentElement是专门获取html这个标签的

获取body的方法(document.body)

document.body是专门获取body这个标签的。

 
 
var li = document.querySelector("ul");
            console.log(ul.childNodes) 文本节点
            console.log(ul.children) 不包括文本节点
            console.log(li.parentElement.parentElement.parentElement.parentElement);//找的元素 最多找到body
           console.log(li.parentNode.parentNode.parentNode.parentNode);//内容一样 类型不一样 找的节点 最多找到html
样式
 li.style.background-color="#ccc"; //短横线不能写 不起作用  首字母小写
            驼峰命名法
            // li.style.backgroundcolor="#ccc";
            //数组命名法
            // li.style["background-color"]="#ccc";
属性   
 
一些常用的 HTML DOM 属性:
  • innerHTML - 节点(元素)的文本值
  • parentNode - 节点(元素)的父节点
  • childNodes - 节点(元素)的子节点
  • attributes - 节点(元素)的属性节点
 

getElementById() 方法

getElementById() 方法返回带有指定 ID 的元素

innerHTML 属性

获取元素内容的最简单方法是使用 innerHTML 属性。

innerHTML 属性对于获取或替换 HTML 元素的内容很有用。

 

  • nodeName 是只读的
  • 元素节点的 nodeName 与标签名相同
  • 属性节点的 nodeName 与属性名相同
  • 文本节点的 nodeName 始终是 #text
  • 文档节点的 nodeName 始终是 #documen

 

 

事件:
             * click                当用户点击鼠标时
             * change           单选、多选状态改变  下拉框选项改变。文本框的值改变
             * mouseover     鼠标被移到某元素之上
             * mouseout       鼠标从某元素移开
               keydown         某个键盘的键被按下
               keyup              某个键盘的的键被松开
            * keypress          当用户触发按键时
               onload            某个页面或图像被完成加载
 

onload 和 onunload 事件

当用户进入或离开页面时,会触发 onload 和 onunload 事件。

onload 事件可用于检查访客的浏览器类型和版本,以便基于这些信息来加载不同版本的网页。

onload 和 onunload 事件可用于处理 cookies

 

实例

<body onload="checkCookies()">

 

 
var btn = document.querySelector("button");
            //  btn.onclick = function(){
            //     //  console.log(this.value)  交互控件的值
            //  }
 
 
 
//获取鼠标位置
// console.log(e.x,e.y)
 
 <!-- 如何让内容跟着鼠标走 -->
    <script>
        window.onload = function (){
            var div = document.querySelector("div");
            var span = document.querySelector("span");
            div.onmousemove = function(e){
                       //获取鼠标位置
                       // console.log(e.x,e.y)
               span.style.top = e.y+"px";
               span.style.left = e.x +"px";
            }    
        }
    </script>
<!-- //选项卡 怎么写-->
    <style>
        *{
            margin: 0;
            padding: 0;

        }
        a{
            text-decoration: none;
            color: #333;
        }
        ul li{
            display: inline-block;
            width: 60px;
            height: 20px;
        }
        ul li a{
            display: block;
            text-align:center ;
            background-color: #ccc;
            color: blueviolet;
            text-decoration: none;
        }
        .active{
            background-color: yellow;
        }
        .content{
            width: 300px;
            height: 200px;
            border:1px solid #ccc ;
        }
    </style>
    <script>
        window.onload = function (){
            var as = document.querySelectorAll("li a");
            for(var i=0; i< as.length;i++){
                as[i].onclick = function(){

                    for(var j=0;j<as.length;j++){
                        as[j].className="";
                    }
                    this.className="active";
                    var url = this.attributes["data-url"].value;
                    //向服务器发送请求
                }
            }
        }
    </script>
posted on 2021-11-07 09:11  闲鱼仔  阅读(40)  评论(0)    收藏  举报