jquery - 检查 div 是否包含与另一个 div 中的 aria-label 值相同的文本
问题描述
我有这样的html:
<h1 class="title">Floor 3</h1>
<div class="floor" aria-label="Floor 1>Bla bla</div>
<div class="floor" aria-label="Floor 2>Bla bla</div>
<div class="floor" aria-label="Floor 3>Bla bla</div>
如何检查 h1 文本是否等于 .floor aria-label 值?如果是这样,将类“.highlight”添加到.floor div?
解决方案
为此,您可以使用从元素中的匹配文本中filter()
查找相关元素。.floor
h1
$('.floor')
.filter((i, el) => $(el).attr('aria-label') === $('h1').text())
.addClass('highlight');
.highlight { color: #C00; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h1 class="title">Floor 3</h1>
<div class="floor" aria-label="Floor 1">Bla bla</div>
<div class="floor" aria-label="Floor 2">Bla bla</div>
<div class="floor" aria-label="Floor 3">Bla bla</div>
推荐阅读
- plc - OPC UA 与不同 PLC 的通信
- c++ - C++ - 从缓冲区异步播放音频
- swift - Swift - 压缩/解压缩内存中的数据,无需任何文件系统交互
- flutter - 从 Stateful Widget 实例访问 State 成员
- c# - 我无法使用 try-catch 捕获 SqlException
- mongodb - 如何将两个不同查询的结果与猫鼬结合起来?
- html - 如何使这个框在 CSS 中居中对齐?
- android - Android - 未找到处理 HTTPS CustomTabsIntent 的活动
- spring - 使用证书文件 (.crt) 和私钥文件 (.key) 的 Spring Boot 应用程序中的 SSL
- android - 了解 Android 日志垃圾收集器