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

网页页面出现Cannot read property 'style' of undefined

网页页面出现Cannot read property 'style' of undefined

慕村2502594 2018-03-12 21:05:41
<!DOCTYPE html><html><head><meta charset="utf-8"><title>7-76 课堂演示</title><link rel="stylesheet" type="text/css" href="style.css"><style type="text/css">div{margin: 15px auto;width: 200px;height: 200px;padding: 15px;border-radius: 200px;position: absolute;}</style></head><body><!-- <div id="div1"></div> --><script>// var div1=document.getElementById('div1')// function moveBall(e){//  var sy=document.documentElement.scrollTop||document.body.scrollTop//  div1.style.left=e.clientX+'px';//  div1.style.top=e.clientY+sy+'px';// }// document.onmousemove=moveBallfunction myFun1(e){var num=30;var divs=document.getElementsByTagName('div')var body=document.getElementsByTagName('body')[0]for(var i=0;i<num;i++){var rad=Math.floor(Math.random()*10)+'px'divs[i]=document.createElement('div')divs[i].style.background='rgb('+4*i+','+2*i+','+i+')'divs[i].style.width=divs[i].style.height=raddivs[i].style.position='absolute'divs[0].style.left=e.clientX+'px';divs[0].style.top=e.clientY+'px';divs[i].style.left=e.clientX+Math.floor(Math.random()*10*i)+'px';divs[i].style.top=e.clientY+Math.floor(Math.random()*10*i)+'px';body.appendChild(divs[i])}}document.onmousemove=myFun1//document.onmousedown=myFun1</script></body></html>上面代码中的divs[i].style.background='rgb('+4*i+','+2*i+','+i+')'这一行出xian报错Uncaught TypeError: Cannot read property 'style' of undefined    at HTMLDocument.myFun1怎么解决
查看完整描述

2 回答

?
anet

TA贡献79条经验 获得超19个赞

懒得看代码了 告诉你原因

你获取某个DOM节点,但是没有拿到

类似var node=document.getElementById('xxx');

所以,node的值自然为undefined

很不幸你又对这个undefined的进行了成员访问,而根据JS语法,undefined不能有成员,自然报错。

要修复这个BUG,你就要找这个DOM节点。

我看你用了循环,也有可能是越界了。

查看完整回答
2 反对 回复 2018-03-12
  • 慕村2502594
    慕村2502594
    可是怎么找这个dom节点呢,肯定没越界
  • anet
    anet
    这代码抄来的吧,分号有的有,有的没有。
  • anet
    anet
    用了这个事件,onmousemove,每次鼠标移动都创建30个节点?
点击展开后面7
?
QQ_随意

TA贡献51条经验 获得超28个赞

for(var i=0;i<num;i++){

num 改为 divs.length

for(var i=0;i<divs.length;i++){

查看完整回答
反对 回复 2018-03-13
  • 2 回答
  • 0 关注
  • 10971 浏览
慕课专栏
更多

添加回答

举报

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