如何获取具有指定href属性的所有元素

时间:2014-04-24 13:11:17

标签: javascript

让它具有href=/href_value/属性的一些元素。如何获取所有元素,使其href属性具有href_value值?

4 个答案:

答案 0 :(得分:8)

如果您可以忽略IE 7或更低版​​本,可以使用:

document.querySelectorAll("[href='href_value']");

答案 1 :(得分:8)

也许您需要获取href值包含您的特定href_value的所有元素?如果是这样,您可以尝试:

document.querySelectorAll('[href*=href_value]');

答案 2 :(得分:3)

您可以使用document.querySelectorAll搜索与CSS选择器匹配的所有元素。所有现代浏览器版本均支持此功能。

在这种情况下:

var elements = document.querySelectorAll('[href="href_value"]');

答案 3 :(得分:3)

通过查看是否支持querySelectorAll,可以看到适用于新旧浏览器的版本

您可以致电getElementsByAttribute(attribute, value)

来使用它

这是一个小提琴:http://jsfiddle.net/ghRqV/

var getElementsByAttribute = function(attr, value) {
    if ('querySelectorAll' in document) {
        return document.querySelectorAll( "["+attr+"="+value+"]" )   
    } else {
        var els = document.getElementsByTagName("*"),
            result = []

        for (var i=0, _len=els.length; i < _len; i++) {
            var el = els[i]

            if (el.hasAttribute(attr)) {
                if (el.getAttribute(attr) === value) result.push(el)
            }
        }

        return result
    }
}