2011-07-05 224 views
3

嗨,我是JQuery的新手,我只想擁有一個右鍵的上下文菜單。我GOOGLE了它,發現示例代碼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(); 
    });   

}); 

我的問題是,當我rightclick一切工作正常。但是當我再次右擊時,什麼都沒有出現。如果想再次出現菜單,我應該再次進行左鍵單擊和右鍵單擊。 任何人都可以幫助解決這個問題提前

感謝

+0

你可以給我整個頁面,以便我可以運行和調試它 –

回答

相關問題