使用 closest 和 matches 方法来检测元素是否存在某选择器

2023-05-16

假如我们有一下 HTML 结构:

<article class="post cat-5">
  <header>
    <h2>Title</h2>
  </header>
  <div class="post-content">
    <p class="summary">summary</p>
  </div>
</article>

我们可以使用 closestmatches 方法来检测元素是否存在某选择器。

  • closest() 方法遍历元素及其父元素(指向根文档),如果当前元素与给定选择器匹配,则返回当前元素,否则返回与给定选择器匹配的最近祖先元素,否则返回 null

  • matches() 方法检查 DOM 元素是否与给定的选择器匹配。

const summary = document.querySelector('.summary') 
const post = summary.closest('.post')

console.log(post.matches('article')) // true
console.log(post.matches('.post')) // true
console.log(post.matches('.post.cat-5')) // true
console.log(post.matches('div.post')) // false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 closest 和 matches 方法来检测元素是否存在某选择器 的相关文章

  • 制作一个简单HTML个人网页网页(HTML+CSS)

    一个简单的HTML网页 xff0c 这是我大学的一个期末作业 xff0c 照片都是网上找的 看一下成品图 主页代码 xff0c 这里的 lt link href 61 34 images css css 34 rel 61 34 style
  • 吃透Java IO:字节流、字符流、缓冲流

    文章目录 1 Java IO流有什么特点 xff1f 2 Java IO流分为几种类型 xff1f 3 字节流和字符流的关系与区别 xff1f 4 字符流是否使用了缓冲 xff1f 5 缓冲流的效率一定高吗 xff1f 为什么 xff1f
  • 2020年最新主板型号排行榜

    主板篇 2020主板型号天梯图2020主板选购指南一 Intel AMD电脑主板的辨别二 主板芯片组级别三 板型 四 主板对电脑性能有什么影响 xff1f 在使用电脑的时候 xff0c 我们有时候会需要更换电脑硬件 xff0c 那么对于比较
  • 3.HTML5_常用标签_居中和空格

    1 居中center 显示使用center标签 这里用标题来演示 默认不使用居中会在居左显示 span class token doctype lt DOCTYPE html gt span span class token tag spa
  • arduino和stm32和51和TSM32的区别,树莓派和jetson nano的区别

    本科时段接触过很多嵌入式的微处理器和微控制器 xff0c 但对其使用场景和区别一直没有一个总结 xff0c 这次收集了一些信息在这总结一下 Arduino STM32 51 TMS320和树莓派和jetson nano都是不同的嵌入式系统

随机推荐

  • rosdep init 错误解决方法

    遇到的错误如下 mo 64 mo span class token operator span ThundeRobot span class token operator span span class token operator spa
  • 刚启动IDEA 就报这个错---> Error:(4, 1) java: 程序包org.apache.ibatis.annotations不存在

    刚启动IDEA 就报这个错 gt Error 4 1 java 程序包org apache ibatis annotations不存在 很简单 xff0c 那是因为jar包没导入 xff0c 或者jar包没下载下来 所以看清楚报什么错 xf
  • 免费节点2:使用捷径添加_盒子:找到性能瓶颈的捷径

    免费节点2 使用捷径添加 经常会通过一些非常古怪的注释来报告性能问题 xff0c 这些注释并没有帮助您了解从何处着手 面对这种困境 xff0c 团队开始猜测根本原因并不少见 现在输入 盒子 xff0c 这是一个完整系统的抽象小图 该框提醒了
  • Android Studio3.5.2使用@BindView代替findViewById

    使用findViewById太繁琐了 xff0c 64 BindView能够很好的减少一些不必要的工作 1 在build grable Moudle app 中加入 implementation 39 com jakewharton but
  • 基于springboot+vue的医院信息管理系统

    基于springboot 43 vue的医院信息管理系统 全网粉丝20W 43 csdn特邀作者 博客专家 CSDN新星计划导师 java领域优质创作者 博客之星 掘金 华为云 阿里云 InfoQ等平台优质作者 专注于Java技术领域和毕业
  • 程序员真的是我们喜欢的工作吗?是生活?还是理想?

    有人说程序员年薪近百万 xff01 程序员 成实现阶级跨越的好职业 xff1f 在大多数人的印象里 xff0c 程序员是非常具有 钱途 的职业 xff0c 年薪至少几十万 半年赚一套房 要嫁就嫁程序员 等类似的消息满天飞 xff0c 足见程
  • Gephi安装教程

    以下附上Gephi安装详细过程 xff1a 软件获取地址 xff1a 链接 xff1a https pan baidu com s 1cgFy8J5M3j1u2Xt2QBWCEw pwd 61 ss20 提取码 xff1a ss20
  • 爬虫实战练习

    肝了一个星期 xff0c 从HTML gt CSS gt python 现在终于成功了 以这篇博文来铭记这个时刻 以下就是数据的采集 xff0c 整理 xff0c 分析以及存储的全过程 新手刚刚接触 xff0c 望不吝赐教 import u
  • python的Excel操作

    1 表单的图片如下 xff1a 2 下边时相关的代码操作 import xlrd 1 读取文件的地址以及工作簿和里边所有的表单信息 workbook 61 xlrd open workbook r 34 C python Python Pr
  • scoop学习笔记

    目录 1 前言 2 安装scoop 设置安装路径 开始安装 编辑 3 导入软件库 重要 一 xff1a 二 xff1a 四 xff1a 点击进去 xff0c 复制框里边的库链接 五 xff1a 进入命令行窗口 xff0c 运行scoop命令
  • LaTeX入门操作

    coding UTF 8 gougu tex 勾股定理 使用 xelatex 编译文档时 xff0c ctexart 文档类会调用 xeCJK 宏包 documentclass UTF8 article 这个就不会在页眉显示目录的内容 do
  • Conda常用操作

    之后遇到了新的东西会慢慢的补充 以下均假设 xff1a myenv是一个名为 myenv 的虚拟环境 一 最重要 xff1a 寻求conda的帮助 conda h conda list h conda remove h 二 查看你的虚拟环境
  • ArchLinux初次进入系统时触摸板可以移动鼠标但是无法点击的问题

    1 问题 正如标题所言 xff0c 进入桌面环境后发现触摸板可以控制鼠标的移动 xff0c 键盘的输入也有效 但是就是没法用触摸板的单指单击 确定 功能 最开始我遇到这个问题的时候以为又是一个bug 去WIKI查了半天 xff0c 有说是触
  • 使用arch linux_什么是Arch Linux? 为什么要使用它?

    使用arch linux Arch Linux is a Linux distribution that is created for simplicity optimization modernity pragmatism user ce
  • 利用生产者与消费者模型实现线程池Java

    实际编码中经常遇到处理并发的场景 xff0c 下面是一种用生产者 消费者模型实现的线程池 xff0c 可以实现并发处理功能 也可以不使用wait xff0c notify xff0c 而是直接用BlockingQueue来实现 span c
  • 解决:docker下安装了RabbitMQ,无法访问web管理页面

    问题 xff1a 在docker下安装了RabbitMQ xff0c 然后运行 xff1a docker run d p 5672 5672 p 15672 15672 name myrabbitmq b57e7dd9d72b 访问http
  • TFT-LCD LVGL与硬件交互

    TFT LCD LVGL与硬件交互 屏幕能正常显示LVGL官方例程 xff0c 说明LVGL移植成功了 xff0c 本次实验使用屏幕通过LVGL控制开发板硬件 实现效果 用LVGL画两个按钮和一个标签 xff0c 一个按钮控制蜂鸣器 xff
  • 功能强大的浏览器插件,解决chrome安装插件失败问题

    维软推出edge浏览器后好多爱好者喜欢使用它的扩展功能 xff0c 但是还是喜欢用chrome浏览器朋友们就烦恼如何安装插件 xff0c 那么我一起看看edge浏览器的插件如何给chrome浏览器安装 如果想安装新的插件按这样操作 在这儿输
  • win10主机无法ping通虚拟机

    问题描述 xff1a 虚拟机可以ping通主机 xff0c win10主机无法ping通虚拟机 显示网络超时 xff0c 下图为解决之后 问题原因 xff1a 本机的网络没有VMware Network 和Adapter VMnet8 我本
  • 使用 closest 和 matches 方法来检测元素是否存在某选择器

    假如我们有一下 HTML 结构 xff1a lt article class 61 34 post cat 5 34 gt lt header gt lt h2 gt Title lt h2 gt lt header gt lt div c