我想在我的Web应用程序中添加自定义右键单击菜单.这可以在不使用任何预先构建的库的情况下完成吗?如果是这样,如何显示一个不使用第三方JavaScript库的简单自定义右键单击菜单?
我的目标是Google Docs的功能.它允许用户右键单击并向用户显示他们自己的菜单.
注意: 我想学习如何制作自己的东西而不是使用某些人已经制作的东西,因为大多数时候,那些第三方库充满了功能,而我只想要我需要的功能,所以我希望它完全由手工制作我.
我有一些网站,如google-docs和map-quest,当你右键单击时会有自定义下拉菜单.他们以某种方式覆盖了浏览器下拉菜单的行为,我现在确切地知道他们是如何做到的.我找到了一个jQuery插件来做到这一点,但我仍然对一些事情感到好奇:
并不是说我试图阻止"查看源代码"或任何愚蠢的东西,但我正在为某些元素制作一些自定义上下文菜单.
编辑:回答答案:我试过这个:
<a id="moo" href=''> </a>
<script type="text/javascript">
var moo = document.getElementById('moo');
function handler(event) {
event = event || window.event;
if (event.stopPropagation)
event.stopPropagation();
event.cancelBubble = true;
return false;
}
moo.innerHTML = 'right-click here';
moo.onclick = handler;
moo.onmousedown = handler;
moo.onmouseup = handler;
</script>
Run Code Online (Sandbox Code Playgroud) 我在使用onCreateOptionsMenu
或使用onOptionsItemSelected
方法时可以轻松完成.
但是我在屏幕的某处有一个按钮,点击该按钮时,它应该启用/禁用上下文菜单项.
我正在创建一个右键单击上下文菜单,通过JMenu
右键单击实例化并将其位置设置为鼠标位置...是否有更好的方法?
我在.NET winform应用程序中有一个datagridview.我想右键单击一行,弹出一个菜单.然后我想选择复制,验证等内容
如何制作A)弹出菜单B)找到右键单击的行.我知道我可以使用selectedIndex,但我应该能够右键单击而不更改所选内容?现在我可以使用选定的索引,但如果有办法获取数据而不改变选择的内容那么这将是有用的.
在我的掌控之中,我有:
ContextMenu = new ContextMenu();
ContextMenu.MenuItems.Add(new MenuItem("&Add Item", onAddSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Edit Item", onEditSpeaker));
ContextMenu.MenuItems.Add(new MenuItem("&Delete Item", onDeleteSpeaker));
ContextMenu.MenuItems.Add( ??? );
ContextMenu.MenuItems.Add(new MenuItem("Cancel"));
Run Code Online (Sandbox Code Playgroud)
我怎么做一个菜单分隔符?
如何向Windows资源管理器添加上下文(也称为右键单击)菜单,单击此按钮可在当前资源管理器文件夹中打开git-bash控制台?
我想在显示ContextMenu之前右键单击选择一个WPF TreeView节点.
对于WinForms,我可以使用这样的代码在上下文菜单下点击查找节点,WPF的替代方案是什么?
如何实现上下文菜单RecyclerView?
显然调用registerForContextMenu(recyclerView)
不起作用.我是从片段中调用它的.有没有人有成功实现这个?
contextmenu ×10
javascript ×3
right-click ×3
android ×2
c# ×2
winforms ×2
datagridview ×1
git ×1
java ×1
jpopupmenu ×1
jquery ×1
menuitem ×1
separator ×1
swing ×1
treeview ×1
wpf ×1