JQuery右键菜单

3

你好,我是JQuery的新手,我只想要一个右键上下文菜单。我在谷歌上搜索并找到了示例代码。

这是我正在使用的代码:

  $(document).ready(function(){
    $('#rightclickarea').bind('contextmenu',function(e){
    var $cmenu = $(this).next();

    $('<div class="overlay"></div>').css({left : '0px', top : '0px',position: 'absolute', width: '100%', height: '100%', zIndex: '100' }).click(function() {
        $(this).remove();
        $cmenu.hide();
    }).bind('contextmenu' , function(){
        return false;}).appendTo(document.body);
    $(this).next().css({ left: getLeftPosition(e), top: getTopPosition(e), zIndex: '101' }).show();

    return false;

     });

     $('.vmenu .first_li').live('click',function() {
        if( $(this).children().size() == 1 ) {
            //alert($(this).children().text());
            $('.vmenu').hide();
            $('.overlay').hide();
        }
     });

     $('.vmenu .inner_li span').live('click',function() {
            //alert($(this).text());
            $('.vmenu').hide();
            $('.overlay').hide();
     });


    $(".first_li , .sec_li, .inner_li span").hover(function () {
        $(this).css({backgroundColor : '#E0EDFE' , cursor : 'pointer'});
    if ( $(this).children().size() >0 )
            $(this).find('.inner_li').hide();   
            $(this).css({cursor : 'default'});
    }, 
    function () {
        $(this).css('background-color' , '#fff' );
        $(this).find('.inner_li').hide();
    });        

});

我的问题是右键单击时一切正常。但是当我再次右键单击时,什么也没有出现。如果我想再次出现菜单,我应该进行中间左键单击和右键单击。有人可以帮助解决这个问题吗?
提前感谢。

你能把整个页面发给我吗,这样我就可以运行和调试它了。 - Sandeep Manne
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接