gpt4 book ai didi

javascript - 上下文菜单的 jquery 停止事件

转载 作者:太空宇宙 更新时间:2023-11-04 12:35:49 27 4
gpt4 key购买 nike

我正在制作上下文菜单,但我的上下文菜单有问题,当我右键单击时,我希望上下文菜单停在该位置。我试过使用 .stop() 但它不起作用。

这是 JS Fiddle

JQUERY

$(".menu").hide();
$(document).on("contextmenu", ".element", function (e) {

$(".menu").fadeIn();
return false;
});

$(document).mouseup(function (e) {
$(".menu").fadeOut(300);
});



$(document).bind('mousemove', function(e){
$('.menu').css({
left: e.pageX + 20,
top: e.pageY
});
$(".menu").stop();
});

最佳答案

这是一种检查菜单是否可见的方法,如果可见则不要移动它。

    var $menu = $(".menu").hide();
$(document).on("contextmenu", ".element", function (e) {
$menu.fadeIn();
return false;
});

$(document).mouseup(function (e) {
$menu.fadeOut(300);
});

$(document).bind('mousemove', function (e) {
if ($menu.is(':visible')) {
return;
}
$menu.css({
left: e.pageX + 20,
top: e.pageY
});

});

DEMO

或者,您可以使用 contextmenu 事件来设置菜单位置,而无需使用 mousemove。

   $(document).on("contextmenu", ".element", function (e) {
$menu.css({
left: e.pageX + 20,
top: e.pageY
}).fadeIn();
return false;
});

DEMO 2

关于javascript - 上下文菜单的 jquery 停止事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27284889/

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