如果用户将鼠标悬停在元素上

时间:2013-06-10 05:45:18

标签: javascript jquery html

如何跟踪用户是否将鼠标悬停在元素上并右键单击右侧x和y位置?

 <div style="position:absolute;left:200px;top:200px">Hello</div>

 <script>
   if ( MOUSE == divPosition && RIGHTCLICKS on it) {
       //Trigger a javascript function!
   }
 </script>

我真的希望有人可以帮助我。

首先应该找到元素所在的位置。之后,多鼠标列表应跟踪用户是否右键单击元素的特定位置。不只是制作“oncontextmenu ..”它应该通过jQuery或其他东西来完成,但我被卡住了。

我试过这个并且运行正常,但它只适用于“mouseover”元素。应该是当用户RIGHTCLICKS在正确的位置时!

'wierdo' : function(id){
$("#item-" + id).each(function(){
boxX = $(this).offset().left;
boxY = $(this).offset().top;
boxW = $(this).innerWidth();
boxH = $(this).innerHeight();
if ((boxX <= mx) &&
    (boxX + 1000 >= mx) &&
    (boxY <= my) &&
    (boxY + boxH >= my))
{
    // mouse is over it so you can for example trigger a mouseenter event
    alert("Yes....");
    $("#item-" + id).trigger({type: "mousedown",which: 3});

    //$(this).trigger("mouseenter");
}

});

1 个答案:

答案 0 :(得分:0)

你可能正在寻找这个:

标记:

<div class='div'>Hello</div>

jQuery的:

$('.div').on('contextmenu', function (e) { //<--contextmenu is right click event
  e.preventDefault();       //<------prevents the right click
  alert('rightClick customized.'); 
});

Checkout the fiddle here