首页 > 网站 > WEB开发 > 正文

封装getElementsByClassName

2024-04-27 14:16:00
字体:
来源:转载
供稿:网友

封装getElementsByClassName

function getElementsByClassName(oEle,sClass,sEle){    if(oEle.getElementsByClassName){        return oEle.getElementsByClassName(sClass);    }else{        var aEle=oEle.getElementsByTagName(sEle || '*'),            reg=new RegExp('(^|//s)'+sClass+'($|//s)'),            arr=[],            i=0,            iLen=aEle.length;        for(; i<iLen; i++){            if(reg.test(aEle[i].className)){                arr.push(aEle[i]);            }        }        return arr;    }}

使用方法:

//第一种:选择document下的所有class为box_box的div元素        getElementsByClassName(document,'box_box','div')[0].style.background='yellow';//第二种:选择document下的所有class为box-box的div元素        getElementsByClassName(document,'box-box','div')[0].style.background='yellow';//第三种:选择document下的所有class为box-box元素        getElementsByClassName(document,'box-box')[0].style.background='yellow';

oEle、sClass是必填的,sEle是选填的。

sClass中又中横线或下划线亲测木有问题,比如说:box-box box_box;但是如果是其他特殊字符就很有可能有问题了,如:box$box...

兼容性:亲测ie6+

js文件下载:

http://pan.baidu.com/share/link?shareid=1821056573&uk=3945321701

来自大大的相关文章:

http://www.cnblogs.com/rubylouvre/archive/2009/07/24/1529640.html


上一篇:angular.foreach 格式

下一篇:js时间格式化

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表