封装getByClass

封装getByClass
                                    function findInArr(n,arr){
                                                for(var i = 0 ;i < arr.length; i++){
                                                    if(n == arr[i]){
                                                        return true;    
                                                    }    
                                                }
                                                return false;
                                            }
                                                     //oParent:父级  sClass:我们要查找的className
                                    function getByClass(oParent,sClass){
                                                   //如果浏览器支持JS自带的获取class的方法就是用JS自带的获取方法;
                                        if(oParent.getElementsByClassName){
                                            return oParent.getElementsByClassName(sClass);
                                        }else{             //如果浏览器不支持JS自带的获取class的方法,也就是ie8-
                                                              //通过oPraent获取所有的元素;
                                            var aEle = oParent.getElementsByTagName(‘*‘);
                                            var arr = [];
                                                  //循环把每个元素身上的class切割一下,切割完成返回一个数组
                                            for(var i = 0; i < aEle.length; i++){
                                                var tmp = aEle[i].className.split(‘ ‘);    
                                                   //判断切割完成后的数组里面是否包含我们需要找的className;
                                                if(findInArr(sClass,tmp)){
                                                     //如果包含的话就添加到arr里面;
                                                    arr.push(aEle[i]);
                                                }
                                            }
                                            return arr;//并且返回arr;
                                        }    
                                    }
                                    window.onload = function(){
                                        var aBlue = getByClass(document,‘blue‘);
                                        for(var i = 0; i < aBlue.length; i++){
                                            aBlue[i].style.background = ‘red‘;    
                                        }    
                                    }

时间: 2024-11-03 21:01:16

封装getByClass的相关文章

【学】正则表达式的一些应用

找出所有数字: var str ='1asdf,s42df,df456sdf'; var re = /\d+/g; // \d数字 console.log(str.match(re)); 校验年龄(18岁到100岁): var re=/^(1[8-9]|[2-9]\d|100)$/ |符号表示或 这里分别用18到19,20到99,以及100进行了分组校验,用|来分割,但是这个符号的优先级很低,所以要把2次或的运算结果都计算出来后再加上^和$ 座机号码验证: 可以有区号,区号0开头,区号可以3位可

js的常见写法技巧

Javascript练习题 正则表达式验证邮箱 摘要: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta

JavaScript笔记(一)

JavaScript组成 EcmaScript:核心部分 作为解释器.几乎没有兼容性问题 DOM:Document Object Model,操作HTML页面的入口.有些操作不兼容. BOM:Browser Object Model,和浏览器相关的操作.完全不兼容. 变量类型 变量本身没有类型,取决于内部存储的是什么类型. 类型转换 强制转换:parseInt(),parseFloat(). 隐式类型转换:==比较,先转换类型再比较:减法运算,只用于数字相减,所以会先转换再计算. 变量作用域 局

JS学习之路,菜鸟总结的注意事项及错误更正

JavaScript 是一种面向对象的动态语言,它的语法来源于 Java 和 C,所以这两种语言的许多语法特性同样适 用于 JavaScript.需要注意的一个主要区别是 JavaScript 不支持类,类这一概念在 JavaScript 通过对象原型 (object prototype)得到延续(有关 ES6 类的内容参考这里Classes).另一个主要区别是 JavaScript 中的 函数也是对象,JavaScript 允许函数在包含可执行代码的同时,能像其他对象一样被传递.1,scrip

tagArr[tagArr.length] = tags[i] 一种非常巧妙的思路

之前我们封装getByClass方法的时候,一般有一步骤是把匹配的元素推进数组中. 比如  aResult.push(obj[i]); 之前的方法代码: getByClass: 1 function $class(domclass){ 2 var obj = document.getElementsByTagName('*'); //获取页面内所有DOM元素 3 var aResult = []; //定义一个空数组,用来存放与目标className相同的元素 4 for(var i=0;i<o

JS 封装函数getByClass(oParent,classn)

通过className调用元素Element function getByClass(oParent,classn)    //oParent,classn 为封装函数getByClass()中的两个形式参数 { var aEl=oParent.getElementsByTagName('*');   //因为还不知道调用哪个元素,所以用通配符* var aResult=[]; for(var i=0;i<aEl.length;i++) { if(aEl[i].className==classn

js getByClass函数封装

1 function getByClass(oParent, sClass) 2 { 3 var aEle=oParent.getElementsByTagName('*'); 4 var aResult=[]; 5 var i=0; 6 7 for(i=0;i<aEle.length;i++) 8 { 9 if(aEle[i].className==sClass) 10 { 11 aResult.push(aEle[i]); 12 } 13 } 14 15 return aResult; 16

js 简单getByClass得封装

function getByClass(oParent,sClass){ var elems = oParent.getElementsByTagName("*"); var arr = []; for(var i = 0; i < elems.length; i++ ){ if(elems[i].className == sClass ){ arr.push(elems[i]); } } return arr; }

JS_ECMA基本语法中的几种封装的小函数-2

大家好!今天继续给大家写一下ECMA中的剩下的小函数以及实用的实例: 首先先给大家说一下字符串.数组.数学方法以及json的一点小知识点: 字符串方法: str.length str.charAt(i):取字符串中的某一个; str.indexOf('e');找第一个出现的位置;找不到返回-1; str.lastIndexOf('e'):找最后一个e出现的位置;找不到返回-1; str.toUpperCase();转大写 str.toLowerCase();转小写 str.substring(起