IE8以下不支持getElementsByClassName方法
function getElementsByClassName(classStr,tagName,element){
tagName = (tagName || '*');
element = (element || document);
if(typeof tagName == 'object'){
element = tagName; tagName = '*';
}
if(document.getElementsByClassName){
return element.getElementsByClassName(classStr);
}else{
var nodes = element.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;
};
};
IE8以下不支持getElementsByClassName方法的更多相关文章
- IE8数组不支持indexOf方法的解决办法
在使用indexof方法之前加上以下代码就可以了. if (!Array.prototype.indexOf){ Array.prototype.indexOf = functio ...
- 解决ie8(及其以下)不支持getElementsByClassName的问题
这篇技术笔记与大家分享的是:解决IE8(及以下)不支持getElementsByClassName的方法.如果有说错的地方,麻烦留言告诉我,我及时更正,一来是更新一下我的认知,二来也是不要误导的他人, ...
- 关于IE8及其以下的IE版本不支持getElementsByClassName
之前做一下项目的时候知道IE8以及其以下的版本不支持getElementsByClassName,于是乎自己写了一个函数重新定义getElementsByClassName,函数代码如下: funct ...
- 解决对象不支持“getElementsByClassName”属性或方法 ie兼容性
解决 IE 或者兼容模式不支持 document.getElementsByClassName() 的方法 自已实现document.getElementsByClassName(): 网页错 ...
- ie6,ie7,ie8 css bug兼容解决方法
IE浏览器以不支持大量的css 属性出名,同时也因其支持的css属性中存在大量bug. 这里收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能够快速解决,也希 ...
- ie不支持getElementsByClassName的解决办法
目前可以这么解决,判断浏览器支不支持这个方法,如果支持就不管:如果不支持,就在document对象里加入getElementsByClassName这个方法,按兴趣的朋友可以了解下 if (navig ...
- 如何让ie9.0以下的浏览器支持getElementsByClassName
如何让ie9.0以下的浏览器支持getElementsByClassName /** * node是表示dom树的搜索起点,Classname是需要搜索的类名. * 如果传入的节点上已经存在了 ...
- getElementsByClassName 方法兼容性封装方法二
var getElmsByClsName = function(className, results) { results = results || []; // 判断浏览器是否支持 getEleme ...
- 现有语言不支持XXX方法
史上最强大的IDE也会有bug的时候哈,今天遇到这个问题特别郁闷,百度了下,果然也有人遇到过这个问题 解决方法: 1.调用的时候参数和接口声明的参数不一致(检查修改) 2.继承接口中残留一个废弃的方法 ...
随机推荐
- OC中的深拷贝与浅拷贝
深拷贝(deep copy)与浅拷贝(shallow copy)的定义一直是有争论的. 一种理解是: 所谓的浅拷贝, 就是不完全的拷贝 NSString *s = @"123"; ...
- c++中的数据类型
1.数据类型简介 c++中数据类型分为两种:预定义类型和自定义数据类型. 预定义类型:整型(int 4个字节) 字符型 布尔型 (bool) 浮点型(4个字节) 空类型:关键字void,不能用于普通变 ...
- 安装pods 遇到的坑
1. ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod 苹果系统升级 OS ...
- jQuery jqGrid中ColModel的参数大全
ColModel 是jqGrid里最重要的一个属性,设置表格列的属性. 用法: java 代码: jQuery("#gridid").jqGrid({ ... colMo ...
- MongoDB 介绍
MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便. MongoDB工作在收集和文件的概念. 数据库 数据库是一个物理容器集合.每个数据库都有自己的一套文件系统上的文 ...
- Java注释中TODO/FIXME/XXX的含义
转自:http://free0007.iteye.com/blog/1886526 特殊注释: 1 TODO 表示需要实现,但目前还未实现的功能 2 XXX 勉强可以工作,但是性能差等原因 3 FIX ...
- 【Linux】将Oracle安装目录从根目录下迁移到逻辑卷
[Linux]将Oracle安装目录从根目录下迁移到逻辑卷 1.1 BLOG文档结构图 1.2 前言部分 1.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到 ...
- (安装linux操作系统)
安装linux centos系统. 准备一张centos的镜像可以去官网下载. 准备VMware Workstation官网下载. 作为初学者一般都用虚拟机安装(VMwareWorkstation), ...
- 异常处理try-catch-finally
php5.5新增 Finally模块 try { //好好干,出了问题不要怕,外面有人接应} catch (HttpException $e) { //时刻准备着,处理上面抛出的HTTP问 ...
- android EditText光标位置(定位到最后)
方法:edittext.setSelection(int); et.setText(content);//设置EditText控件的内容et.setSelection(content.length() ...