gpt4 book ai didi

javascript - 当我将 event.clientY 放入 setInterval 循环中时,它未定义

转载 作者:行者123 更新时间:2023-12-02 18:08:54 24 4
gpt4 key购买 nike

我正在制作一个用于移动页面上的元素的脚本,我需要在鼠标向下移动时将其放入循环中,否则无法阻止它。但是,一旦我出于某种原因将其放入 setInterval 循环中,我就会收到此错误“未捕获的类型错误:无法读取未定义的属性“clientY””。我不知道为什么会发生这种情况。有人能透露一下情况吗?

$(document).on('mousedown', '#moveMe', function(){
$(document).on('mousemove', '#moveMe', function(){
var inLoop = setInterval(function(){
var y = event.clientY;
var x = event.clientX;
$('#moveMe').css('left', parseInt(x)+"px");
$('#moveMe').css('top', parseInt(y)+"px");
}, 1);
$(document).on('mouseup', 'body', function(){
clearInterval(inLoop);
});
});
});

最佳答案

您需要将事件传递给事件处理程序

$(document).on('mousedown', '#moveMe', function(){
$(document).on('mousemove', '#moveMe', function(event){
var inLoop = setInterval(function(){
var y = event.clientY;
var x = event.clientX;
$('#moveMe').css('left', parseInt(x)+"px");
$('#moveMe').css('top', parseInt(y)+"px");
}, 1);

$(document).on('mouseup', 'body', function(){
clearInterval(inLoop);
});
});
});

关于javascript - 当我将 event.clientY 放入 setInterval 循环中时,它未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19872141/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com