我想要一个像 $(".author")
这样的选择器,如果“author”是任何属性的值,而不仅仅是类,它将选择一个元素。
例如selector.text()
应该为以下每个页面提供“Emily Ekins”:
<a href="http://reason.com/people/emily-ekins" rel="author">Emily Ekins</a>
或
<bloop href="http://reason.com/people/emily-ekins" id="author">Emily Ekins</a>
或
<blah href="http://reason.com/people/emily-ekins" class="author">Emily Ekins</a>
或
<tag href="http://reason.com/people/emily-ekins" random="author">Emily Ekins</a>
有什么办法吗?
最佳答案
var elements = document.getElementsByTagName("*");
for(var i=0;i<elements.length;i++){
var element = elements[i];
var attr = element.attributes;
for(var j=0;j<attr.length;j++){
if(attr[j].nodeValue == 'author'){
element.style.backgroundColor='red';
}
}
}
哇!那花了一些时间。但这将检查任何给定元素的每个属性,如果任何属性是author
,它将改变背景颜色为红色。
关于如果 *any* 属性匹配,JQuery 选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8371229/