getElementsByClassName()是HTML5 新增的DOM API。IE8以下不支持搜索。
getElementByClassName()函数的使用方法:
使用JavaScript访问DOM的一个重大问题是,此过程需要一种通过元素类名称来选择类的类函数,对DOMContentReady,这种类函数的缺失导致开发人员需要自己编写自定义脚本业执行上述任务,许多这个类脚本都是围绕着getElementByClassName()建立的,这种解决方法在HTML5中被标准化,另外,这种方法还本地存在于现代浏览器中,GetElementByClassName()只使用一个字符串值作为输入.并返回一个Nodelist,这个NodeList包含所有类名称匹配这个字符串值的元素:
var el = document.getElementsByClassName('foo');
通过在字符串中使用空格分隔类,也可以匹配多个类,下面的代码挑选出了所有既拥有foo类名称又拥有bar类名称的元素:
var el = document.getElementsByClassName('foo bar');
W3C没有getElementByClassName这个函数,我们可以自己定义一个函数来模拟它。
一般如下几种方法:
1、要不就是使用jquery来实现
2、通过自定义函数解决
class单个时 如class="test"
function getElementsByClassName (className) { var all = document.all "htmlcode">function getElementsByClassName(className,parent){ var oParent=parent"parent"):document; var oLis=oParent.getElementsByTagName("*"); var arr=[]; for(var i=0;i<oLis.length;i++){ if(oLis[i].className==className){ arr.push(oLis[i]) }; return arr; } };class有多个的时候同样匹配,如class="test1 test2 test3"
function getElementsByClassName (className) { var all = document.all " "); for(var i=0;i<classList.length;i++){ if (classList[i] == className) { elements[elements.length] = all[e]; break; } } } return elements; }下面再附一个完整的测试代码:
<!DOCTYPE html> <html> <head> <meta charset='UTF-8' /> <script> /*JS写getElementByClassName; 我发现chorm、firefox、ie都支持document.getElementsByClassName */ window.onload = function(){ var adom = document.getElementsByClassName('a1'); for(var i = 0;i<adom.length;i++) adom[i].style.backgroundColor="red"; }; function getElementByClassName(className){ var elems = []; if(!document.getElementsByClassName){ alert("no exit"); var dom = document.getElementByTagName('*'); for(var i = 0;i<dom.length;i++){ if(dom[i].className == className) elems.push(dom[i]); } }else{ elems = document.getElementsByClassName(className); alert('exit'); } return elems; } </script> </head> <body> <div id="a1">a1</div> <div class="a1">a1</div> <div class="a1">a1</div> <div id="a1">a1</div> <div class="a1">a1</div> </body> </html>效果如图所示:
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 张真.1993-失恋十四行【上华】【WAV+CUE】
- 钟明秋《爱有天意HQCD》[低速原抓WAV+CUE]
- 孙云岗唢呐《金声玉振[HIFI珍藏版]》[低速原抓WAV+CUE]
- 谭艳精讯TEST-CD试音39号》2CD[DTS-WAV]
- 姚璎格《发烧女中音》DSD版[低速原抓WAV+CUE][1G]
- 张玮伽《微风细雨DSD》发烧大碟[WAV+CUE][1.1G]
- 群星《2024好听新歌14》十倍音质 U盘音乐 [WAV分轨][966M]
- s14全球总决赛T1战队队员都有谁 LOLs14全球总决赛T1战队介绍
- 英雄联盟faker身价有10亿吗 英雄联盟faker身价介绍一览
- faker大魔王称号怎么来的 faker大魔王称号来源介绍
- PS5 Pro上的蒂法更美了!博主盛赞新机1000%值得购买
- 腾讯互娱再离职一员大将!或因供应商贪腐
- Ayaneo3游戏掌机预热:旗舰定位、造型圆润自带底键
- 动力火车.1999-背叛情歌【上华】【WAV+CUE】
- 刘力扬.2019-Neon.Lit虹【摩登天空】【FLAC分轨】