HTML5中新增了一個令人期待已久的方法:getElementsByClassName。藉此方法我們可以通過class屬性中的類名來訪問元素。
但由於這個方法比較新,某些DOM實現裏可能還沒有,只有較新的瀏覽器才支持,所有DOM程序員需要編寫自己的函數來實現
這一功能。下面是JavaScript Dom編程藝術上面的實現方法:
function myGetElementsByClassName(node, classname)
{
if(node.getElementsByClassName)
return node.getElementsByClassName(classname);
else
{
var results = new Array();
var elems = node.getElementsByTagName("*");
for(var i = 0; i < elems.length; i++)
if(elems[i].className.indexOf(classname) != -1)
results[results.length] = elems[i];
}
return results;
}
接受兩個參數,node表示DOM樹中的搜索起點,classname就是要搜索的類了。