Javascript 新手。如何在页面中搜索特定“p 类”中的文本并单击其旁边的 href 链接?尝试创建一个 Chrome 扩展程序,该扩展程序将在新选项卡中打开 Twitter 链接。我有一个基本的扩展,但卡在这里。非常感谢任何帮助。
如何从推文中找到提及爱国者队(或任何关键字)的第一个 href?
推文的 HTML:
<p class="js-tweet-text tweet-text">
'No chance' Patriots franchise tag Aqib Talib
<a href="http://t.co/6dV3EHg5WU" rel="nofollow" dir="ltr" data-expanded-url="http://dlvr.it/4tsL8d" class="twitter-timeline-link" target="_blank" title="http://dlvr.it/4tsL8d">
<span class="tco-ellipsis"></span>
<span class="invisible">http://</span>
<span class="js-display-url">dlvr.it/4tsL8d</span>
<span class="invisible"></span>
<span class="tco-ellipsis">_</span>
</span></a></p>
最佳答案
您可以使用querySelectorAll()
来查找要搜索的项目,自己在内容中进行搜索,然后按照DOM从下一个链接获取href:
function findTextAndClick(findText) {
var items = document.querySelectorAll(".tweet-text");
for (var i = 0; i < items.length; i++) {
var text = items[i].textContent || items[i].innerText;
if (text.indexOf(findText) >= 0) {
var links = items[i].querySelectorAll("a");
if (links.length) {
window.location = links[0].href;
return;
}
}
}
}
HTML 上的示例用法:
findTextAndClick("Patriots");
关于Javascript 在 Chrome 中根据关键字文本查找 href,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21665945/