javascript - 是否可以选择一个包含 h1 的锚标记,其中包含文本“访问站点”?
问题描述
我正在使用 Cypress.io 来测试我的初创公司的网站,并想选择一个特定的锚标记。
但是,该锚标记没有任何可以用来识别它的唯一属性,因此我想使用h1
包含文本“访问站点”的子标记来帮助识别锚标记。
<a href="/blablabla" target="_blank" rel="noopener noreferrer canonical">
<h1>Visit Site</h1>
</a>
我将无法使用该href
属性来帮助识别锚标记,因为笔试将用于具有相同结构但内容不同的其他页面。
我的问题是我不知道是否可以根据元素是否包含某个文本的元素来选择它。
解决方案
您可以使用 jQuery 的 contains 选择器根据其中的文本找到所需的 h1。找到 h1 后,只需选择其父级作为您的锚点。
let targetH1 = $('a h1:contains("Visit Site")');
console.log(targetH1.parent()); // this will give you the anchor element
推荐阅读
- java - JTable 未在数据库中显示添加的条目
- kendo-ui - 如果使用javascript在kendo dropdowntree中没有子元素,如何删除父元素
- sql - 有没有办法让查询仅根据 case 语句返回的值返回结果?
- mongodb - mongoDB 在通过 datastage 插入日期格式(YYYY-MM-DD)时向日期字段添加 4 小时和 5 小时?这是正常行为吗?
- html - 将按钮插件输入与文本对齐
- node.js - 当我指定它返回数据时,graphql Mutation 返回 null
- django - 来自 CORS 预检通道的 CORS 标头“Access-Control-Allow-Headers”中缺少令牌“access-control-allow-origin”
- csv - 如何根据列的内容将行转换为列
- excel - 遍历每个工作表时返回运行时错误“1004”的代码
- mysql - 在组上选择 MAX() 不会返回相应的同级列