添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
如何调试JS中鼠标悬停事件影响的元素?

如何调试JS中鼠标悬停事件影响的元素?

在日常的前端开发中,我们经常要调试许多其他开发者写的网站和代码。此时我们往往会打开浏览器的开发者工具,在 Elements , Console , Network , Sources , Performance 等多个 Tab 之间来回穿梭。

今天笔者来分享一个 Chrome 调试技巧,来方便的调试JS中鼠标悬停事件影响的元素。

什么是鼠标悬停事件?

鼠标悬停俗称 hover ,它会在鼠标指针悬停在被选元素上时触发。一般前端开发会利用 css 中的 :hover 伪类选择器,来给被选元素应用不同的样式,从而增强用户的体验感。

最常见的例子就是 Button 按钮,鼠标移上去变个色:

默认状态

悬停状态

Force element-state 的局限性

Chrome 中,我们可以通过 Force element-state 来强制设置元素的状态,以此来调试鼠标悬停 样式 影响的元素。

操作方式,即先在 Elements 中选中目标元素,然后在右侧的工具栏中,选择 Styles 标签,点开 :hov ,然后在 Force element-state 中选择对应的元素状态即可( hover )。

调试面板

但是这种方式,往往只能调试一些 css 的伪类选择器,不能用来触发和调试 js 中的鼠标悬停事件。比如用 js 控制隐藏显示的 el-dropdown 下拉菜单就无法用此面板控制 ( Live Demo )。

el-dropdown

为了复现这个 case , 我们写一段代码:

<template>
      @mouseenter="visible = true"
      @mouseleave="visible = false"
      鼠标到这显示
    </div>
    <div v-if="visible">隐藏内容</div>
  </div>