javascript - 通过很多链接搜索

标签 javascript jquery

页面上有一堆超链接,每个超链接都在标签下。

<h2 class="lk">
<a href="https://en.wikipedia.org/wiki/Something">Something - Wikipedia</a>
</h2>

<h2 class="lk">
<a href="https://genius.com/The-beatles-something-lyrics">The Beatles – Something Lyrics | Genius Lyrics</a>
</h2>

..等等

我想搜索是否有任何超链接包含 vimeo.com。如果是,请单击它,否则单击底部旁边 <td class="cur"> 的分页链接。 .在这种情况下,“第 2 页”。

<td class="cur"><a aria-label="Pg 1" class="pg" href=""></a></td>
<td><a aria-label="Pg 2" class="pg" href=""></a></td>

然后再次在第 2 页,搜索标签下的一堆超链接。

如果超链接包含 vimeo.com,请单击它,否则单击 <td class="cur"> 旁边的链接.在这种情况下,“第 3 页”。

<td><a aria-label="Pg 1" class="pg" href=""></a></td>
<td class="cur"><a aria-label="Pg 2" class="pg" href=""></a></td>
<td><a aria-label="Pg 3" class="pg" href=""></a></td>

等等。

我如何在 JavaScript/jQuery 中实现它?

最佳答案

您可以使用 "attribute contains" (*=) selector :

$('a[href*="vimeo.com"]').click();

但是,不要指望浏览器允许您以这种方式打开一堆新标签页,至少在没有先与用户确认的情况下是这样。

关于 aria-label="Pg 2" 链接,无法绕过 if:

var links = $('a[href*="vimeo.com"]');
if (links.length) {
    links = $('a[aria-label="Pg 2"]'); // If you only want one, use `.first()` on the end
}
links.click();

关于javascript - 通过很多链接搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52568289/

相关文章:

javascript - AngularJS Controller 无法加载数据

javascript - 隐藏在模态弹出可滚动部分后面的 jQuery 多选下拉值

javascript - 如何对三个图像使用 globalCompositeOperation?

javascript - freeMode 不适用于内部幻灯片内的 Swiper

jQuery 单击以加载视频/更改缩略图不起作用

javascript - 安全错误 : The operation is insecure in canvas. 到数据 URL

javascript - 如果子复选框被选中,jQuery 检查父复选框

javascript - $(document).ready() 完成后如何触发某些东西?

javascript - 我可以在 $.submit() 中运行 setTimeout/setInterval 吗?

javascript - 我想让顶部选项卡在单击时保持打开状态