gpt4 book ai didi

javascript - 如何重新启动事件 mousemove jquery?

转载 作者:行者123 更新时间:2023-11-28 13:03:25 27 4
gpt4 key购买 nike

我必须通过单击移动一个 div,再次单击我必须将 div 停止在该位置。现在的问题是:当我想再次移动 div 时,没有激活 mousemove 事件……我该如何解决?

$('.move_div').live('click', function() {                    
$('html').on('mousemove', function(e) {
var x = e.pageX - this.offsetLeft;
var y = e.pageY - this.offsetTop;
$('div').css({'top': y, 'left': x});
});
$("html").live('click', function() {
$('html').off('mousemove');
});
});

最佳答案

var ele = '.move_adv';
var moveBool = false;

$(function () {
$('html').on('mousemove', function (e) {
console.log($(this).width());
if (moveBool == true) {
var x = e.pageX - $(ele).width()/2;
var y = e.pageY - $(ele).height()/2;
$(ele).css({
'top': y,
'left': x
});
}
});
});

$(ele).live('click', function () {
moveBool = !moveBool;
});

http://jsfiddle.net/6y24s/2/

主要逻辑是以 bool 值存储 div 的“可移动性”状态。

您还想进一步完善代码。

关于javascript - 如何重新启动事件 mousemove jquery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20875075/

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