功能需要,寫了個獲取多個tagname節點集合的小方法。類似於jQuery的$(‘iput,select,textarea','#form')的效果,返回是按節點在原有文檔流中的順序返回的。
復制代碼 代碼如下:
//獲取指定標簽類型的節點數組 用例:GetTagNames('input,select,textarea',document.getElementById('form'))
function GetTagNames(tagnames,parEl){
//父節點未定義默認循document
var parEl=parEl || document;
//獲取指定父元素的子節點
var all=parEl.getElementsByTagName('*');
//存放所有符合條件的子節點
var nodes=[];
//將轉入的tagname轉換成判斷正則
var reg=eval('/'+tagnames.split(',').join('|')+'/i');
//循環,判斷,存儲
for(var ii=0;ii<all.length;ii++){
if(reg.test(all[ii].nodeName)){
nodes.push(all[ii]);
}
}
//返回
return nodes;
}
來自:mrthink.net