制定document.getElementByClassName()

制定document.getElementByClassName()

Abstract

W3C DOM有制定document.getElementByClassName(),但有候没有ID,而只有class name可抓怎?
Introduction

Blog做改造,常遇到根本有ID可抓,而只有class可抓,但很憾W3C DOM有document.getElementByClassName(),以下JavaScript可以模getElementByClassName()。
JavaScript / getElementByClassName

1   function   getElementsByClassName (className) {
2        var   all  =   document.all  ?   document.all : document.getElementsByTagName(   '   * '   );
3     var  elements  =  new  Array();
4        for   (   var   e  =   ; e  <   all.length; e   ++   ) {
5          if   (all[e].className  ==   className) {
6          elements[elements.length]  =   all[e];
7            break   ;
8        }
9      }
10        return   elements; 11   } 12

2行

var   all  =   document.all  ?   document.all : document.getElementsByTagName(   '   *   '   );

document.allIE4的DHTML的技,IE4之後接有支援,所以可以的利用是否有支援document.all判 是否IE,若不是IE,用W3C DOM的document.getElementByTagName('*')取代all,所以方式在IE或FireFox皆能使用。
4行 ~ 9行

for   (   var   e  =   ; e  <   all.length; e   ++   ) {      if   (all[e].className  ==   className) {      elements[elements.length]  =   all[e];        break   ;    } }   利用圈一tag一tag判其class name否符合件,找到第一符合件就跳出圈,如此就能找到第一符合class name的tag。  

转载于:https://www.cnblogs.com/leejersey/archive/2012/11/14/2770244.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值