JavaScript-手写实现getElementsByClassName功能方法
发布日期:2021-05-07 01:26:41 浏览次数:24 分类:原创文章

本文共 955 字,大约阅读时间需要 3 分钟。

参数为String类型,指定类名

Document.prototype.getByClassName = function ( className ){               var ansArr = [];            var allClass = document.getElementsByTagName('*'); //得到所有的DOM标签元素 返回的是类数组            var allDomArr = Array.prototype.slice.call(allClass,0);    //通过改变this指向,变成数组                        // 去掉DOM元素中className多余空格             function dealClass(dom) {                   var reg = /\s+/g;                var arrClassName = dom.className.replace(reg,' ').trim();                return arrClassName;   //返回的是字符串            }            allDomArr.forEach( function (ele,index){                   var allitemarr  = dealClass(ele).split(' ');        // 字符串中split 以空格拆分成数组                for(var i = 0; i < allitemarr.length; i++){                       if(allitemarr[i] == className){                           ansArr.push(ele);                        break;                    }                }            });            return ansArr;        }
上一篇:js-运动总结(常见运动效果)
下一篇:CSS3 新用户界面属性

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月17日 09时13分55秒