常用的js自定义方法 -- hasClass addClass removeClass getElementsByClass

function hasClass(ele,cls) {
var result = ele && ele.className && (ele.className.search(new RegExp('(\\s|^)'+cls+'(\\s|$)')) != -1);
return !!result;
}

function addClass(ele,cls) {
  if (!hasClass(ele,cls) && ele && ele.className) ele.className += " "+cls;
}

function removeClass(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className = ele.className.replace(reg,' ');
  }
}

function getElementsByClass(classN){
var elements =[];
var listElm = document.getElementsByTagName("*");
for(var i = 0; i < listElm.length; i++){
if(hasClass(listElm[i],classN)) elements.push(listElm[i]);
}
return elements;
}
posted @ 2011-07-13 17:42  拉登不开心  阅读(532)  评论(0编辑  收藏  举报