如何获取包含已知文本的链接

时间:2011-10-22 09:07:39

标签: javascript yui

页面包含带有“打开帮助”文本的链接。如何使用YUI获取包含该文本的锚点?

1 个答案:

答案 0 :(得分:0)

YUI2因此提供了getElementsBy函数。它有一个过滤器methode属性,你可以检查当前元素是否符合你的目的。请注意,您将获得包含所有匹配元素的数组。所以你可以选择第一个,如果有一个命中。 http://developer.yahoo.com/yui/docs/YAHOO.util.Dom.html#method_getElementsBy

var elements, 
    searchText = "Open Help";

elements = YAHOO.util.Dom.getElementsBy(function (element) {
    return (element.innerHTML === searchText) ? true : false;
}, "a", document);

if (elements.length > 0) {
    //do something with elements[0]
}

另一方面,YUI3解决方案在我看来更清洁:

var searchText = "Open Help";

Y.all("a").each(function (el) {
    if (el.getContent() === searchText) {
        //do something with the el
    }
});