我想要像$(".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';
        }
    }
}

Example

ew!那花了一些时间。但这将检查的每个给定元素的每个属性的,如果任何属性是author,它将背景色更改为红色。

09-16 23:11