Node webkit:剪切/复制/粘贴右键单击上下文菜单和iframe

Node webkit: Cut/copy/paste right click context menu and iframe

本文关键字:上下文 单击 菜单 iframe 右键 webkit 剪切 复制 Node      更新时间:2023-09-26

是否有任何关于如何做到这一点的参考实现?

整个应用程序有一个包含第三方内容的iframe,我无法修改。我可以在空白应用程序中设置上下文菜单,但是当iframe占据整个窗口时,它不会出现。

(我使用$(document)。("快捷菜单",. .)

我怎样才能使它在框架中工作?

您应该将侦听器附加到iframe的内容窗口。这是一个示例代码,我想它应该适合你的需要。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf8">
    <title></title>
    <style type="text/css">
        #gframe{
            width: 100%;
            height: 100%;
            left: 0px;
            top: 0px;
            position: absolute;
        }
    </style>
    <script type="text/javascript">
        var appendContextmenuListener = function(){
            var gframe = document.getElementById('gframe');
            var subWindow = gframe.contentWindow;
            var subDocument = subWindow.document;
            subDocument.oncontextmenu = function(){
                console.log(1);
            }
        };
    </script>
</head>
<body>
    <iframe id="gframe" src="https://www.google.com.hk" 
        onload="appendContextmenuListener()"></iframe>
</body>
</html>

这是对tinyproxy脚本的响应…

onload事件是伟大的报告一个iframe的标题和URL作为用户导航,但我不会使用它的点击,因为每次用户导航到某处(使用左键点击)你的脚本将追加一个新的监听器,因为onload事件将触发随着框架加载新的内容!

更正确的方法是…

FrameID.addEventListener('contextmenu',function(){Whatever();});