getElementsByClassName】的更多相关文章

平时写HTML时多用class来命名,为很少用id来命名,主要原因就是class使用起来比较灵活. 但是万恶的JS在操作DOM的时候对ie6+只提供了getElementById和getElementsByTagName两个方法来查找DOM. 这时候就很尴尬了,就不得不在HTML里加入各种各样的id.看了就烦,不爽 Js有提供一个通过class名查找DOM的方法:getElementsByClassName(); 但是......只支持ie9+   -.-,哎呀好尴尬... 只好自己写一个兼容I…
× 目录 [1]使用 [2]classList [3]扩展 前面的话 既然有getElementById()和getElementsByTagName()方法,为什么没有getElementsByClassName()呢?id属性.标签名.class属性并没有什么优劣之分啊.终于,HTML5新增了getElementsByClassName()方法,由于在CSS布局中类名的广泛使用,该方法正好切中痛点,使得通过类名选取元素不再麻烦,成为最欢迎的一个方法.接下来,本文将详细介绍该方法 使用 HTM…
function getElementsByClassName(node, className) { var aClassReg = className.split(' ').map(function(item) { return new RegExp('(^|\\s)' + item + '(\\s|$)'); }); var childs = node.getElementsByTagName('*'); return Array.prototype.filter.call(childs,…
<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="" /> <meta name="copyright" content="" /> <title></title> <style> * {…
1. getElementById() getElementsByTagName()  javascript原生的方法,这两个不会有兼容性问题. 2. getElementsByClassName()是HTML5的DOM API ,IE8及以下不支持(不支持HTML5的浏览器). 对于现代浏览器,document.getElementsByClassName( 'wrap' )获取的是DOM中所有class为wrap的元素 在IE8及以下,可以模拟实现这种效果 function getEleme…
try{ var a = document.getElementsByClassName("cla"); console.log(a); }catch(ex){ var array = []; for(var i = 0;i<document.body.childNodes.length;i++){ if(document.body.childNodes[i].nodeType === 1){ var name = document.body.childNodes[i].clas…
getElementsByClassName是html5 新增加的一个类名.该方法可以让我们通过class属性中的类名来访问元素.不过该方法比较新,某些DOM树还没有,因此在使用中要当心.由于只有较新的浏览器支持,为了弥补这一不足,可以使用已有的DOM方法来实现自己的getElementsByClassName.下边这个函数使用各种新老浏览器.  小提示: getElementById--------------       id是单选的,是getElement getElementsByCla…
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <div class="div1"></div> <div class="div1"></div>…
这篇技术笔记与大家分享的是:解决IE8(及以下)不支持getElementsByClassName的方法.如果有说错的地方,麻烦留言告诉我,我及时更正,一来是更新一下我的认知,二来也是不要误导的他人,谢谢.我们在给元素设置样式的时候,可以说用的最多的就是类(class)了.遗憾的是在低版本IE浏览器(IE8及其以下版本)中,我们不能用getElementsByClassName,因为IE没有为document对象添加这个方法.// IE8及其以下版本中 这个结果是falseconsole.inf…
function getElementsByClassName(classStr,tagName,element){ tagName = (tagName || '*'); element = (element || document); if(typeof tagName == 'object'){ element = tagName; tagName = '*'; } if(document.getElementsByClassName){ return element.getElement…