我现在正在用Ruby做一个项目,这个项目本质上是一个网络应用程序。我们喜欢web应用程序的格式,以及我们为web构建的一些天然的敏捷优势。但是,我们希望能够打包我们的应用程序并以独立的格式分发它。
理想情况下,我们实际上希望为Mac制作一个.app包,为.exe制作一个.exe包,它只是打开一个Webkit视图,连接到我们的服务器并呈现我们服务的HTML。
到目前为止,这并不难,虽然这超出了我们目前的专业知识(尤其是Windows开发),但都是可以克服的。
问题是,我们想要启用右键单击,就像在iTunes存储中一样(这是一个Webkit视图,具有自定义的右键单击事件)。我们也希望在我们的应用程序中赋予我们的右点击特殊意义,并让它对上下文敏感。
我们该怎么办?我们能从哪里开始呢?
发布于 2010-01-24 01:13:07
您想从您的app应用程序还是从您的本地应用程序端执行此操作?
如果您是从Cocoa应用程序执行此操作,则只需实现webView:contextMenuItemsForElement:defaultMenuItems: WebUIDelegate方法,并返回与您的自定义操作相对应的自定义NSMenuItem数组。
如果您想从web应用程序本身执行此操作,可以为"contextmenu“事件添加一个事件侦听器,如下所示:
document.addEventListener("contextmenu", function(event) {
event.preventDefault();
console.log("My spiffy custom right click menu here!");
}, false);
但是,您需要注意,如果您在the应用程序中使用上述代码,您不能修改浏览器的本机右键菜单,只需用您自己的自定义创建来替换它。
https://stackoverflow.com/questions/2124729
复制相似问题