正如Adrian所说,插件将以相同的方式工作。您将需要三个基本部分:
1:事件的事件处理程序:'contextmenu'
$(document).bind("contextmenu", function(event) {
event.preventDefault();
$("<div class='custom-menu'>Custom menu</div>")
.appendTo("body")
.css({top: event.pageY + "px", left: event.pageX + "px"});
});
在这里,您可以将事件处理程序绑定到要为其显示菜单的任何选择器。我选择了整个文档。
2:事件的事件处理程序(关闭自定义菜单):'click'
$(document).bind("click", function(event) {
$("div.custom-menu").hide();
});
3:CSS控制菜单的位置:
.custom-menu {
z-index:1000;
position: absolute;
background-color:#C0C0C0;
border: 1px solid black;
padding: 2px;
}
CSS 的重要一点是包含 和z-index
position: absolute
将所有这些包装在光滑的jQuery插件中并不难。
您可以在此处看到一个简单的演示:http://jsfiddle.net/andrewwhitaker/fELma/