自定义右键菜单(阻止右键弹出菜单)

一、概述

某些时候我们并不需要右键弹出菜单的功能,或者我们需要模拟一个右键菜单用以实现我们的需求;

二、解决办法

这里我通过了oncontextmenu来实现,以下是全局阻止右键的办法

document.oncontextmenu = function (event) {
   event.preventDefault();
};
如果我们仅仅需要部分dom阻止右键菜单则可以

var el = document.getElementById("tar");  
var oMenu = document.getElementById("menu");  

el.oncontextmenu = function(e) {  
    //左键--button属性=1,右键button属性=2  
    if(e.button == 2) {  
        e.preventDefault();  
        var _x = e.clientX,  
            _y = e.clientY;  
        oMenu.style.display = "block";  
        oMenu.style.left = _x + "px";  
        oMenu.style.top = _y + "px";  
    }  
}
这里tar是我们需要自定义右键菜单的dom元素,menu则是我们自定义的菜单。

亲测在主流浏览器上面都是可以使用的。


你可能感兴趣的:(常用功能)