Javascript根据Chrome中的关键字文字查找href

时间:2014-02-09 22:29:45

标签: javascript google-chrome

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>

1 个答案:

答案 0 :(得分:0)

您可以使用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");