Heim  >  Artikel  >  Web-Frontend  >  js获取多个tagname的节点数组_javascript技巧

js获取多个tagname的节点数组_javascript技巧

WBOY
WBOYOriginal
2016-05-16 17:22:00923Durchsuche

功能需要,写了个获取多个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  if(reg.test(all[ii].nodeName)){
   nodes.push(all[ii]);
  }
 }
 //返回
 return nodes;
}

来自:mrthink.net

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn