Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                
                    6年前关闭。
            
        

    

我想在右键单击表格行时显示上下文菜单,并且要阻止右键单击除表格行以外的所有页面。我想通过jQuery加载上下文菜单。

这是我的上下文菜单div:

<div class="xContextMenu">
    <ul>
        <li><a href="javascript:;" class="next-chat">Accept Next Chat</a></li>
        <li><a href="javascript:;" class="next-response">Next Response</a></li>
        <li><a href="javascript:;" class="accept-chat">Accept Chat</a></li>
        <li><a href="javascript:;" class="refuse-chat">Refuse Chat</a></li>
        <li class="xDividerMenu">
            <img src="/live-person/web-area/assets/img/xContextDivider.png" alt="" />
        </li>
        <li><a href="javascript:;" class="invite-chat">Invite Chat</a></li>
        <li><a href="javascript:;">Engage</a></li>
        <li><a href="javascript:;">Block For Chat</a></li>
        <li><a href="javascript:;">Send Private Message</a></li>
        <li><a href="javascript:;">Chat Actions</a></li>
        <li class="xDividerMenu">
            <img src="/live-person/web-area/assets/img/xContextDivider.png" alt="" />
        </li>
        <li><a href="javascript:;" class="chat-history">Chat History</a></li>
        <li><a href="javascript:;">All Sessions history</a></li>
        <li><a href="javascript:;">Capture Visitor</a></li>
        <li class="xDividerMenu">
            <img src="/live-person/web-area/assets/img/xContextDivider.png" alt="" />
        </li>
        <li><a href="javascript:;">Suggest Content</a></li>
        <li class="xDividerMenu">
            <img src="/live-person/web-area/assets/img/xContextDivider.png" alt="" />
        </li>
        <li><a href="javascript:;">Cobrowser</a></li>
    </ul>
</div>

最佳答案

这是一个可行的选择:

FIDDLE

$(document).on('contextmenu', function(e) {
    e.preventDefault();
    e.stopPropagation();
    if ($(e.target).is('li')) {
        $('#contextmenu').css({
            top:e.pageY + 'px',
            left:e.pageX + 'px'
        }).show();
    }
    return false;
});

$(document).on('click', function(e) {
   if (!$(e.target).is('#contextmenu')) $('#contextmenu').hide();
});

关于javascript - 当我仅右击表行时加载div-上下文菜单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17813757/

10-12 13:20