为了账号安全,请及时绑定邮箱和手机立即绑定

为什么老是提示getElementsByTagName为空,能不能发一下javascript出现各种问题的情况的网站

为什么老是提示getElementsByTagName为空,能不能发一下javascript出现各种问题的情况的网站

队友杀手 2017-05-10 15:00:56
window.onload = function() {   waterfall('main','box');}function waterfall(parent,box){   //��main将所有class为box的元素取出来   var oParent = document.getElementById('parent');   getByClass(oParent,box);   console.log(boxArr);}//获取class元素function getByClass(parent,clsName){   var boxArr =new Array(),  //用来储存获取到class为box的所有元素      oElements=parent.getElementsByTagName('*'); //这一行报错   for(var i =0;i<oElements.length;i++){      if(oElements[i].className==clsName){         boxArr.push(oElements[i]);      }   }   return boxArr;}
查看完整描述

3 回答

已采纳
?
IT李小贱

TA贡献6条经验 获得超0个赞


getElementsByTagName意思是通过元素名称查找元素,很显然没有*这个元素,自然会报错

查看完整回答
反对 回复 2017-05-10
  • 队友杀手
    队友杀手
    噢, 我是打算获取所有元素,但他提示我Uncaught TypeError: Cannot read property 'getElementsByTagName' of null at getByClass (goform.js:18) at waterfall (goform.js:12) at window.onload (goform.js:7)
?
队友杀手

TA贡献10条经验 获得超3个赞

问题解决了,我把  var oParent = document.getElementById('parent');当中的引号删除了,然后就正常了,他是没找到parent的main元素,所以返回的是空。

查看完整回答
1 反对 回复 2017-05-10
  • 3 回答
  • 0 关注
  • 2650 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信