我应该使用什么事件来隐藏jquery中的上下文菜单?

时间:2012-04-06 23:20:07

标签: jquery

我有一个上下文菜单,当您右键单击时会在某些元素上显示。这没问题。

wrapper.on('contextmenu', 'div.outer', function (e) {        
    context_menu.css({
        left: e.pageX,
        top: e.pageY,
        zIndex: '101'
     }).fadeIn();
     return false;
});

//This does not work correctly
context_menu.mouseout(function (e) {
    $(this).fadeOut();
});

我试图找出当用户没有悬停在菜单上时如何隐藏菜单。现在,只要我在右键单击后移动鼠标就会淡出。

3 个答案:

答案 0 :(得分:1)

这些事件很可能是mouseleave,因为它是一个容器。

context_menu.mouseleave(function (e) {
    $(this).fadeOut();
});

答案 1 :(得分:0)

请看这里:http://api.jquery.com/hover/

hover()事件有一个方法,当鼠标悬停在元素上时,一个方法用于当鼠标悬停在元素上时。

答案 2 :(得分:0)

$(selector).hover(handlerIn, handlerOut);

是简写:

$(selector).mouseenter(handlerIn).mouseleave(handlerOut);