gpt4 book ai didi

jquery鼠标右键div

转载 作者:行者123 更新时间:2023-12-01 01:16:20 26 4
gpt4 key购买 nike

Possible Duplicate:
How to distinguish between left and right mouse click with jQuery

当我在 div 内单击鼠标右键时如何打开上下文菜单。因为当我在 div 内单击鼠标右键时,它会淡出吗?

Javascript

$("#link").click(function(e){
e.stopPropagation();
div = $("#mydiv").fadeToggle(300);
});

$("#mydiv").click(function(e){
e.stopPropagation();
});

$(document).click(function(e){
$('#mydiv').fadeOut(200);
});

HTML

<a id="link">Click</a>
<div id="mydiv" style="width: 200px; height: 200px;">Hello</div>

更新:

Javascript

$("#link").click(function(e){
e.stopPropagation();
div = $("#mydiv").fadeToggle(300);
});

$("#good_buttom").click(function(e){
e.stopPropagation();
div = $("#hide").fadeToggle(300);
});

$("#mydiv").mousedown(function(e) {
switch (e.which) {
case 1:
e.stopPropagation();
$('#mydiv').fadeOut(200);
break;
case 2:
alert('2');
break;
case 3:
alert('3');
break;
default:
alert('You have a strange mouse');
}
});

HTML

<a id="link">Click</a>
<div id="mydiv" style="width: 200px; height: 200px;">
<button id="good_button">Click IT</button>
<div id="hide" style="display:none;">Show up.</div>
</div>

最佳答案

click只能由鼠标左键单击触发,而mousedown可以由鼠标左/中/右键单击触发。因此,只需在代码中将 click 替换为 mousedown,并通过检查 event.which 来区分左/中/右单击。请查看How to distinguish between left and right mouse click with jQuery举个例子。

顺便说一句:检查这个link可以帮助您理解 clickmousedownmouseup 事件之间的关系。还有这篇文章:Javascript Madness: Mouse Events也许也有帮助。根据经验,最好处理 mousedownmouseup 等低级事件,而不是 click 等高级事件>dblclick 当您需要对鼠标事件进行更多控制时。

还有一个问题是,您在 HTML 中的 mydiv 之前放置了多余的“#”。

更新:根据您的新要求,您可以添加以下代码以避免事件传播。

$("#good_button").mousedown(function(e) {
e.stopPropagation(); // avoid triggering its parent
div = $("#hide").fadeToggle(300);
});

关于jquery鼠标右键div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14135591/

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