javascript 事件问题,为什么这段代码不执行?

下面代码是一个div跟着鼠标到处动的效果,我反复检查过,代码应该没有问题,但是为什么这段代码就是不执行呢?functiongetPos(ev){varscrollTop=... 下面代码是一个div跟着鼠标到处动的效果,我反复检查过,代码应该没有问题,但是为什么这段代码就是不执行呢?
function getPos(ev){

var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
var srcollLeft=document.documentElement.scrollLeft||document.body.scrollLeft;

return {x: ev.clientX+scrollLeft, y: ev.clientY+scrollTop};
}

document.onmousemove=function (ev){
var oDiv=document.getElementsByTagName('div')[0];
var oEvent=ev||event;
var pos=getPos(oEvent);

oDiv.style.left=pos.x+'px';
oDiv.style.top=pos.y+'px';

}
展开
 我来答
huibo865686
2014-06-09 · TA获得超过916个赞
知道小有建树答主
回答量:325
采纳率:80%
帮助的人:266万
展开全部
小伙伴,你的单词写错了啊

var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
var srcollLeft=document.documentElement.scrollLeft||document.body.scrollLeft;
srcollLeft == srcollLeft?? 应该是scrollLeft
追问
谢谢,我已经改过来了,但是还是不运行
追答
function getPos(ev){

    var y = document.documentElement.scrollTop || document.body.scrollTop;
    var x = document.documentElement.scrollLeft || document.body.scrollLeft;
        
    return {x: ev.clientX + x, y: ev.clientY + y};
}
var oDiv = document.getElementsByTagName('div')[0];
document.onmousemove=function (ev){
    var oEvent=ev||event;
    var pos=getPos(oEvent);
        
    oDiv.style.left=pos.x+'px';
    oDiv.style.top=pos.y+'px';

    console.log(pos)
}

这里运行已经没有问题了,我坐过测试了

还有你的div的css属性position必须是fixed 或者 absolute 否则是没有效果的

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式