<script type="text/javascript">function getClass(tagName, className) {  //第一个参数 表示是className是所属那个dom标签下,这样为了提高检索效率//如果是火狐择调用火狐的getElementsByClassName 内置函数if (document.getElementsByClassName) {return document.getElementsByClassName(className)}else {var nodes = document.getElementsByTagName(tagName),ret = []for (i = 0; i < nodes.length; i++) {if (hasClass(nodes[i], className)) { ret.push(nodes[i]) }}return ret;}}function hasClass(node, className) {var names = node.className.split(/\s+/) //这个正则表达式是因为class可以有多个,判断是否包含for (i = 0; i < names.length; i++) {if (names[i] == className) return true;}return false;}
</script>

使用例子:

View Code

<!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><title></title><script type="text/javascript">function getClass(tagName, className) {  //第一个参数 表示是className是所属那个dom标签下,这样为了提高检索效率//如果是火狐择调用火狐的getElementsByClassName 内置函数if (document.getElementsByClassName) {return document.getElementsByClassName(className)}else {var nodes = document.getElementsByTagName(tagName),ret = []for (i = 0; i < nodes.length; i++) {if (hasClass(nodes[i], className)) { ret.push(nodes[i]) }}return ret;}}function hasClass(node, className) {var names = node.className.split(/\s+/) //这个正则表达式是因为class可以有多个,判断是否包含for (i = 0; i < names.length; i++) {if (names[i] == className) return true;}return false;}function showMsg() {var tag = getClass('div', 'test');for (var i = 0; i < tag.length; i++) {alert(tag[i].innerText);}}</script>
</head>
<body><div class="test">hello!</div><input type="button" value="show" onclick="showMsg()" />
</body>
</html>

转载于:https://www.cnblogs.com/fumj/archive/2012/06/16/2551538.html

js 自定义getClass函数实现获取dom的class 兼容火狐ie相关推荐

  1. Angualr中通过原生js和ViewChild的方式获取dom

    场景 Angular介绍.安装Angular Cli.创建Angular项目入门教程: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...

  2. html 自动输入日期,Js日期选择自动填充到输入框(界面漂亮兼容火狐)

    很漂亮.兼容火狐的Js日期选择,自动填充到输入框 body{font-size:12px;font-family:Verdana,Arial,"宋体";} a:link {colo ...

  3. vue设置img大小的属性_Vue.js自定义标签属性并获取属性,及绑定img的src属性的坑...

    一.定义属性: 一般定义属性都是为了动态的去获取属性的值,或者动态的设置属性的值,如果想仅仅是设置一个普通的属性,直接在便签上设置属性即可,就像使用html的title.name等属性一样,如 H1标 ...

  4. js 自定义extend函数

    转自:http://blog.csdn.net/openblogs/article/details/25169165 1.实现: /*** 有一个函数为extend,该函数有两个参数* arg1* a ...

  5. Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数【含代码】)- 案例篇

    文章目录 Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数[含代码])- 案例篇 效果截图: 重要代码: 附:全部HTML代码: Ajax异步请求(重渲染DOM元素时,如何自动调 ...

  6. vue怎么给html元素加类选择器,Vue.js——获取Dom对象的类选择器名(className)

    方法一:通过监听器监听方法event参数获取dom对象 代码: vue自定义指令 .pop{ width:100px; background-color:#ffff00; height:100px; ...

  7. vue中自定义指令、组件化、生命周期、节流和防抖、获取DOM、mint-ui简介、过渡和动画

    自定义指令: vue中通过directive方法自定义指令,如:自定义一个v-focus指令: <script>Vue.directive('focus', {//通过directive( ...

  8. APIS——获取dom对象、操作元素内容和属性、间歇函数

    APIS 变量声明 Web API基本认知 作用和分类 DOM DOM树 DOM对象 获取DOM对象 根据CSS选择器来获取DOM元素(重点) 其它获取DOM元素方法(了解) 操作元素内容 操作元素属 ...

  9. JS中编写函数去除HTML标签,js函数获取html中className所在的内容并去除标签

    js函数获取html中className所在的内容并去除标签 复制代码 代码如下: function queryClass(classnames){ var classobj= new Array() ...

  10. 常用原生js自定义函数

    js获取日期函数 //获取当前时间日期 function CurentTime() {var now = new Date();var year = now.getFullYear(); //年var ...

最新文章

  1. R语言检验类别型变量独立性
  2. 【JAVASCRIPT】jquery实现新闻滚动效果
  3. java memorycache原理_JVM代码缓存区CodeCache原理及用法解析
  4. python编程语法大全-Python编程入门——基础语法详解
  5. 小程序中页面兼容h5标签的解析
  6. 【Python】Python处理图像五个有趣场景,很实用!
  7. mba数学-幂学-2016
  8. 如何在Tomcat中设置JNDI数据库连接池-Spring教程示例
  9. C/C++打造经典推箱子小游戏
  10. java二维数组的常见初始化
  11. 【java】抽象类下有两个具体子类,子类下有两个实例
  12. c语言中转义字符efg,c语言的转义字符与空白符
  13. python int函数 向上取整_【Python小课】 print()函数
  14. Java——单例模式:饿汉、懒汉模式
  15. AD学习之旅(13)— 常用参数和快捷键的设置
  16. android app后台收不到消息,Android APP被关闭后无法收到推送消息(尝试)
  17. 4939: [Ynoi2016]掉进兔子洞 莫队 压位
  18. 组成原理 - 网卡与HBA卡的区别
  19. PL2303HXA自2012已停产,请联系供货商
  20. 群辉NAS+为知笔记docker定制私有云笔记

热门文章

  1. python两数相加有进退位_Python 之父透露退位隐情,与核心开发团队产生隔阂
  2. php中的str replace,PHP字符串替换str_replace()函数4种用法详解
  3. jquery 封装ajax方法,关于二次封装jquery ajax办法示例详解
  4. fetch与axios
  5. Cesium:向地图中添加点的方法
  6. Python:字符串、列表、元组、字典之间的相互转换
  7. java将excel转换成txt_java将excel文件转换成txt格式文件
  8. pos mac java_有没有谁搞过银联POS终端mac算法[php版本]?
  9. Java反射库jOOR简介
  10. 数学_一文搞懂极大似然估计