我觉得我的没有问题啊,为什么老是提示我说我的onmouseover定义不了呢?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>匀速动画</title>

<style>

body,div,span{

margin:0;

padding:0;

}

#first{

    width:200px;

height:200px;

position:relative;

background:#F00;

cursor:pointer;

top:0;

left:-200px;

}

#first span{

    background:#00C;

width:30px;

height:50px;

    border-radius:2px;

font-size:20px;

text-align:center;

position:absolute;

left:200px;

top:75px;

color:#FFF;

}     

</style>

<script type="text/javascript">

window.onload=function(){

   var oDiv=document.getElementById('#first');

   oDiv.onmouseover=function(){

        starMove();   

}

}

var timer=null;

function starMove(){

clearInterval(timer);

var oDiv=document.getElementById('#first');

timer=setInterval(function(){

if(oDiv.offsetLeft==0){

clearInterval(timer);

}else{

oDiv.style.left=oDiv.offsetLeft+10+'px';

}

},30)

   }

</script>

</head>


<body>

 <div id=first><span>分享</span></div>

</body>

</html>


这是他的错误提示:Uncaught TypeError: Cannot set property 'onmouseover' of null


慕仰6432972
浏览 1717回答 2
2回答

qq_非诚勿扰_3

var oDiv=document.getElementById('#first');改成var oDiv=document.getElementById("first");试试

qq_二冬_0

他给你报的错说的是你不能为null的定义一个onmouseover属性,那么原因肯定就是因为你的oDiv是一个null,原因是你在var oDiv=document.getElementById('#first');//这个语句里你应该获取的元素是id属性值为first的,不需要#,带#的是jq的写法吧。<div id=first><span>分享</span></div>      //定义属性的时候最好属性的值应该用单或双引号括起来
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript