1. 程式人生 > >遮蔽預設右鍵選單

遮蔽預設右鍵選單

Jquery

$(document).bind("contextmenu",function(e){
        return false;
});

js

document.oncontextmenu = function(e){
    return false;
}

之後就可以自定義右鍵選單

 $("#flight_box").on("mousedown", ".table_list tr td", function (e) {
     e.stopPropagation();
     if (3 == e.which) { //右鍵按下
         xxx
     }
})

PS

oncontextmenu 事件在元素中使用者右擊滑鼠時觸發並開啟上下文選單。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
div {
    background: yellow;
    border: 1px solid black;
    padding: 10px;
}
</style>
</head>
<body>

<div oncontextmenu="myFunction()"
contextmenu="mymenu">
<p>在文字框內右擊滑鼠檢視上下文選單!</p> <menu type="context" id="mymenu"> <menuitem label="Refresh" onclick="window.location.reload();" icon="ico_reload.png"></menuitem> <menu label="Share on..."> <menuitem label="Twitter" icon="ico_twitter.png"
onclick="window.open('//twitter.com/intent/tweet?text=' + window.location.href);">
</menuitem> <menuitem label="Facebook" icon="ico_facebook.png" onclick="window.open('//facebook.com/sharer/sharer.php?u=' + window.location.href);"></menuitem> </menu> <menuitem label="向該網頁傳送郵件" onclick="window.location='mailto:?body='+window.location.href;"></menuitem> </menu> </div> <script> function myFunction() { alert("你在 div 元素總點選滑鼠了右鍵。"); } </script> <p><strong>注意:</strong> 只有 Firefox 中支援 contextmenu <strong>屬性</strong> !</p> </body> </html>