js擷取多個tagname的節點數組

來源:互聯網
上載者:User

功能需要,寫了個擷取多個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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.