头闻号

郑州市中原区天信化工供应站

制浆助剂|脱模剂|污水处理成套设备|保温、隔热材料|表面活性剂|化工原料代理加盟

首页 > 新闻中心 > 科技常识:原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题
科技常识:原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题
发布时间:2023-02-01 09:53:24        浏览次数:9        返回列表

今天小编跟大家讲解下有关原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题 的相关资料,希望小伙伴们看了有所帮助。

原生js方法“document.getElementsByClassName”在ie8及其以下浏览器中 不能使用。 修改:加入兼容性判断 在需要用到该方法的位置修改为getClassNames方法。 代码如下: 原来方法: document.getElementsByClassName('tabs_div'); 这里的调用方法为:getClassNames('tabs_div' , 'div'); 复制代码代码如下: var divs = getClassNames('tabs_div' , 'div'); function getClassNames(classStr,tagName){ if (document.getElementsByClassName) { return document.getElementsByClassName(classStr) }else { var nodes = document.getElementsByTagName(tagName),ret = []; for(i = 0; i < nodes.length; i++) { if(hasClass(nodes[i],classStr)){ ret.push(nodes[i]) } } return ret; } } function hasClass(tagStr,classStr){ var arr=tagStr.className.split(/\s+/ ); //这个正则表达式是因为class可以有多个,判断是否包含 for (var i=0;i<arr.length;i++){ if (arr[i]==classStr){ return true ; } } return false ; }

来源:爱蒂网