【发布时间】:2014-06-09 19:12:38
【问题描述】:
让我有一些带有href=/href_value/attribute 的元素。如何获取所有元素,使其 href 属性具有 href_value 值?
【问题讨论】:
-
你的意思是这样的? stackoverflow.com/questions/303956/…
标签: javascript
让我有一些带有href=/href_value/attribute 的元素。如何获取所有元素,使其 href 属性具有 href_value 值?
【问题讨论】:
标签: javascript
如果你有幸忽略 IE 7 或更低版本,你可以使用:
document.querySelectorAll("[href='href_value']");
【讨论】:
也许您需要获取所有href 值包含您的特定href_value 的元素?如果是这样,请尝试:
document.querySelectorAll('[href*="href_value"]');
【讨论】:
通过查看是否支持 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
}
}
【讨论】:
您可以使用document.querySelectorAll 搜索与 CSS 选择器匹配的所有元素。所有现代浏览器版本都支持这一点。
在这种情况下:
var elements = document.querySelectorAll('[href="href_value"]');
【讨论】: