![](/img/trans.png)
[英]Is there a better way to get the specific element by their class name to modify the elements?
[英]Better way to find all elements with a class name
在不支持document.getElementsByClassName
瀏覽器中,是否有更好/更快的方法來查找具有類名的所有元素?
var elements = document.getElementsByTagName('*'),
results = [];
for (var i=0; i < elements.length; i++) {
(elements[i].className === selector) ? results.push(elements[i]) : null;
}
return results;
不,我不想使用jQuery :)
我將檢查John Resig在模擬document.getElementsByClassName
方法上的比較 。
盡管IE8不支持document.getElementsByClassName
,但它確實支持document.querySelectorAll
,因此無論如何這將是IE8的一個選項。
您可以執行以下操作:
function byClass( sel ) {
var results;
if( document.querySelectorAll ) {
results = document.querySelectorAll( '.' + sel );
} else if( document.getElementsByClassName ) {
results = document.getElementsByClassName( sel );
} else {
var elements = document.getElementsByTagName('*'),
results = [];
// and so on
}
return results;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.