首页 > 其他分享 >event 和 this 的区别

event 和 this 的区别

时间:2023-05-14 19:23:14浏览次数:41  
标签:event none 区别 li ul nav display

event 和 this 的区别

事件对象 event

​ 定义:包含事件相关信息的对象;这个事件例有事件触发时的相关信息

​ 用于记录:哪个标签触发了该事件、哟用户按下哪个键触发该事件、鼠标位置

event.target 指的是所记录的事件对象

环境对象 this

​ 定义:环境对象指的是函数内部特殊的变量this,它代表当前函数运行时所处的环境

​ 谁调用函数、监听事件;是就是this;箭头函数内this指向上一级,箭头函数本身无this

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        li {
            list-style-type: none;
        }
        
        a {
            text-decoration: none;
            font-size: 14px;
        }
        
        .nav {
            margin: 100px;
        }
        
        .nav>li {
            position: relative;
            float: left;
            width: 80px;
            height: 41px;
            text-align: center;
        }
        
        .nav li a {
            display: block;
            width: 100%;
            height: 100%;
            line-height: 41px;
            color: #333;
        }
        
        .nav>li>a:hover {
            background-color: #eee;
        }
        
        .nav ul {
            display: none;
            position: absolute;
            top: 41px;
            left: 0;
            width: 100%;
            border-left: 1px solid #FECC5B;
            border-right: 1px solid #FECC5B;
        }
        
        .nav ul li {
            border-bottom: 1px solid #FECC5B;
        }
        
        .nav ul li a:hover {
            background-color: #FFF5DA;
        }
    </style>
    <script src="jquery.min.js"></script>
</head>

<body>
    <ul class="nav">
        <li>
            <a href="#">微博</a>
            <ul>
                <li>
                    <a href="">私信</a>
                </li>
                <li>
                    <a href="">评论</a>
                </li>
                <li>
                    <a href="">@我</a>
                </li>
            </ul>
        </li>
    </ul>
    <script>
        const lis = document.querySelectorAll(".nav > li")
        for(let i = 0;i < lis.length;i++){
            lis[i].addEventListener("mousemove",function (e) {
                this.querySelector("ul").style.display = "block"
                console.log(e.target)  //指 a 标签对象
                console.log(this)	  //指 li 标签对象
            })
            lis[i].addEventListener("mouseout",function () {
                this.querySelector("ul").style.display = "none"
            })
        }
    </script>
</body>

</html>

标签:event,none,区别,li,ul,nav,display
From: https://www.cnblogs.com/Agiser0/p/17397779.html

相关文章

  • QAbstractEventDispatcher 抽象事件分发类
     QAbstractEventDispatcherQAbstractEventDispatcher是一个抽象事件分发类,提供了一个事件循环,并将事件分发给相应的对象。主要职责有:1.管理一个事件循环,接收各种事件并分发2.提供注册,注销事件等接口3.处理定时器,到期后触发timeout信号4.处理异步信号连接,将其包装为事件......
  • i7 13700和13700K的区别 i713700和i713700K差距
    i7-13700K为16核24线程,即8大核8小核,主频3.4GHz,睿频5.3GHz,30MB三级缓存。单核跑分2090分,多核跑分16542分。组装电脑选i713700还是13700K怎么搭配更合适这些点很重要http://www.adiannao.cn/duintel13代酷睿i713700K相比i713700最大的区别在于支持超频,拥有不锁......
  • 函数strncpy和memcpy的区别
    1定义1.1memcpyvoid*memcpy(void*destin,void*source,unsignedn);参数*destin----需要粘贴的新数据(地址)*source----要拷贝的数据(地址)unsignedn----拷贝数据的字节数1.2strncpchar*strncpy(char*destinin,c......
  • A User Account Restriction Is Preventing You From Logging On
    AUserAccountRestrictionIsPreventingYouFromLoggingOn Theerrormessage"Youcannotloginduetoaccountrestrictions"isdisplayedwhenyoulogintothesystemusingtheremotedesktopfunction.Thisisbecau......
  • 【❂Java集合】循环链表和双向链表的区别是是什么
    最后一个结点指针指向不同在建立一个循环链表时,必须使其最后一个结点的指针指向表头结点,而不是像双向链表那样置为NULL。此种情况还用于在最后一个结点后插入一个新的结点。判断链域值不同在判断是否到表尾时,是判断该结点链域的值是否是表头结点,当链域值等于表头指针时,说明已到......
  • 协程,gevent模块
    多进程,每启动一个程序单开一块空间,单分配一些资源多线程,在一个进程里面开多个线程,让多个线程同时工作,操作系统控制线程对IO操作阻塞感知能力强多协程,在一个线程,跑多个任务,程序控制协程程序是别人写好的模块,所以感知IO操作阻塞能力差gevent可以实现,当函数遇到IO操作(阻......
  • n卡和a卡的主要区别
    n卡和a卡的区别1、GPU流处理器不同N卡的GPU中每个流处理器都具有完整的ALU功能,在发出一条操作指令时每个流处理器都能充分工作。A卡的GPU中每个流处理器的5个流处理单元都是固定的,不能拆开重组,每个流处理器只能处理一条4D指令。2、两者的设计侧重点不同N卡注重3D性能和速度,A......
  • Python-单引号、双引号和三引号的作用和区别
    (一)、作用 1.单引号:单引号内部为一串字符(str)。 2.双引号:双引号内部为一串字符,双引号内的字符串可以出现单引号(相当于双引号优先级更高),但不能嵌套双引号。 3.三引号:用于换行输出,且缩进会被打印出来。(三引号还可以用来进行块注释)。(二)、共同点python中变......
  • useCallback,useMemo, React.memo的区别
     同:useCallback,useMemo和React.memo是三个在React中用于优化性能的方法。它们的主要目标是避免不必要的重新渲染和计算。因为当一个组件的状态发生变化时,React会重新渲染整个组件树。用这三个hook和组件,可以提升性能。 异:下面从属性,接收参数,返回值,意义和案例等方面进行详细地......
  • Nginx中add_header和proxy_set_header的区别
    一、proxy_set_header和add_header的区别 proxy_set_header是nginx设置请求头给上游服务器,add_header是nginx设置响应头信息给浏览器。1.1proxy_set_header 语法格式: proxy_set_headerfieldvalue; value值可以是包含文本、变量或者它们的组合。......