getElementsByClassName的用法 和 js获取class

简介:

因为IE浏览器不支持getElementsByClassName,所以你要自己写一个方法得到class

但是火狐浏览器知道getElementsByClassName,可以直接的用

 

<html>

<head>

    <title></title>

    <script type="text/javascript">

        window.onload = function () {

            var tagName = getClass("div", "a1");

           //因为返回的是包含多个元素的数组,所以要遍历一下

            for (var i = 0; i < tagName.length; i++) { 

                tagName[i].innerHTML = "你好";

            }

           

            var tagName = getClass("div", "a2");

            for (var i = 0; i < tagName.length; i++) {

                tagName[i].innerHTML = "ALL好";

            }

        }

        function getClass(tagname, className) { //tagname指元素,className指class的值

         //判断浏览器是否支持getElementsByClassName,如果支持就直接的用

            if (document.getElementsByClassName) {   

                return getElementsByClassName(className);

            }

            else {    //当浏览器不支持getElementsByClassName的时候用下面的方法

                var tagname = document.getElementsByTagName_r(tagname);  //获取指定元素

                var tagnameAll = [];     //这个数组用于存储所有符合条件的元素

                for (var i = 0; i < tagname.length; i++) {     //遍历获得的元素

                    if (tagname[i].className == className) {     //如果获得的元素中的class的值等于指定的类名,就赋值给tagnameAll

                        tagnameAll[tagnameAll.length] = tagname[i];

                    }

                }

                return tagnameAll;

            }

        }

    </script>

</head>

<body>

<div class="a1"></div>

<div class="a1"></div>

<div class="a1"></div>

<div class="a1"></div>

<div class="a2"></div>

<div class="a2"></div>

<div class="a2"></div>

<div class="a2"></div>

</body>

</html>

我建议不要用上面的方法,用JQuery,可以省去很多的代码



本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1750920


相关文章
|
JavaScript 前端开发
JS try catch用法:异常处理
【10月更文挑战第12天】try/catch` 是 JavaScript 中非常重要的一个特性,它可以帮助我们更好地处理程序中的异常情况,提高程序的可靠性和稳定性。
692 56
|
JavaScript 前端开发 Java
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
柯里化是一种强大的函数式编程技术,它通过将函数分解为单参数形式,实现了灵活性与可复用性的统一。无论是参数复用、延迟执行,还是函数组合,柯里化都为现代编程提供了极大的便利。 从 Redux 的选择器优化到复杂的数据流处理,再到深度嵌套的函数优化,柯里化在实际开发中展现出了非凡的价值。如果你希望编写更简洁、更优雅的代码,柯里化无疑是一个值得深入学习和实践的工具。从简单的实现到复杂的应用,希望这篇博客能为你揭开柯里化的奥秘,助力你的开发之旅! 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一
|
Web App开发 JavaScript 前端开发
JavaScript 类(class)
JavaScript 类(class)
182 2
JavaScript 类(class)
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
645 1
|
JavaScript 前端开发
JS中的构造函数的含义和用法
构造函数是JavaScript中用于创建新对象的特殊函数,通常首字母大写。通过`new`关键字调用构造函数,可以初始化具有相同属性和方法的对象实例,从而实现代码复用。例如,定义一个`Person`构造函数,可以通过传入不同的参数创建多个`Person`对象,每个对象都有自己的属性值。此外,构造函数还可以包含方法,使每个实例都能执行特定的操作。构造函数的静态属性仅能通过构造函数本身访问。ES6引入了`class`语法糖,简化了类的定义和实例化过程。
431 1
|
JavaScript 前端开发
js的math.max的用法
js的math.max的用法
889 6
|
JavaScript
JS中的splice的三种用法(删除,替换,插入)
JS中的splice的三种用法(删除,替换,插入)
1383 4
|
JavaScript 前端开发
JavaScript用法
JavaScript用法
|
JavaScript 前端开发
js之class继承|27
js之class继承|27
|
前端开发 JavaScript 开发者
深入理解JavaScript中的Promise:用法与最佳实践
【10月更文挑战第8天】深入理解JavaScript中的Promise:用法与最佳实践
1481 0

热门文章

最新文章