2016-06-13 15 views
1

属性がないすべてのspanタグを見つけようとしています。クラスもスタイリングも何もありません。私はこれをやってきました:属性のないDOM要素を検索しますか?

function hasAttributes(span) { 
    if (span.outerHTML.slice(0,6) === '<span>') return true; 
    return false; 
} 

特定の要素が適格かどうかを確認する方法はありますか?

答えて

2

querySelectorAll()を使用してすべてspansを選択し、次にforループを使用してattributesプロパティでループをフィルタすることができます。 spanに属性がない場合、空の配列が返されます。

var spans = document.querySelectorAll('span'); 
 
for (var i = 0; i < spans.length; i++) { 
 
    if (spans[i].attributes.length == 0) spans[i].style.color = 'blue'; 
 
}
<span>one</span> 
 
<span class="two">Two</span>

+1

するための要素のプロパティを属性 – charlietfl

+0

間違いなく動作しますが、それはjQueryのをロードするのにかかる時間は、のいずれかの利益を回避するだろうとかかわらのjQueryを使用してOPを想定しています別の解決策からの時間。 – Cliff

+0

@Cliff純粋なjsソリューションで更新されました。 –

0

チェックは、長さ

function hasAttributes(span){ 
    return span.attributes.length; 
} 
関連する問題