Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AppJs键盘快捷键(复制、粘贴、剪贴板、退出、全选…)_Javascript_Angularjs_Node.js_Appjs - Fatal编程技术网

Javascript AppJs键盘快捷键(复制、粘贴、剪贴板、退出、全选…)

Javascript AppJs键盘快捷键(复制、粘贴、剪贴板、退出、全选…),javascript,angularjs,node.js,appjs,Javascript,Angularjs,Node.js,Appjs,我只是使用Node.js和Angular.js构建了一个AppJs应用程序,但我无法让键盘快捷键正常工作 我有一个菜单栏在工作,但在我的Mac上,&技巧不起作用: var menubar = appjs.createMenu([{ label:'&File', submenu:[{ label:'&Quit', action: function(){ window.close(); }

我只是使用Node.js和Angular.js构建了一个AppJs应用程序,但我无法让键盘快捷键正常工作

我有一个菜单栏在工作,但在我的Mac上,&技巧不起作用:

  var menubar = appjs.createMenu([{
     label:'&File',
     submenu:[{
        label:'&Quit',
        action: function(){
          window.close();
        }
      }]
    },
    {
      label:'&Window',
      submenu:[
        {
          label:'&Fullscreen',
          action:function(item) {
            window.frame.fullscreen();
            console.log(item.label+" called.");
          }
        },
        {
          label:'&Minimize',
          action:function(){
            window.frame.minimize();
          }
        },
        {
          label:'Maximize',
          action:function(){
            window.frame.maximize();
          }
        },
        {
          label:''//separator
        },
        {
          label:'Restore',
          action:function(){
            window.frame.restore();
          }
        }
      ]
    }
  ]);
我尝试做的另一件事是允许使用CMD+C、CMD+V和CMD+A复制/粘贴并选择所有内容…但我找不到一种方法来做到这一点

我的ready event server端有以下代码,witch捕获键盘事件,但我不知道如何处理它们:

window.on('ready', function(){
  window.require = require;
  window.process = process;
  window.module = module;
  window.addEventListener('keydown', function(e){
    // SELECT ALL (CMD+A)
    if (e.keyCode == 65) {
      console.log('SELECT ALL');
    }
    // COPY (CMD+C)
    if (e.keyCode == 67) {
      console.log('COPY');
    }
    // PASTE (CMD+V)
    if (e.keyCode == 86) {
      console.log('PASTE');
    }
    if (e.keyIdentifier === 'F12' || e.keyCode === 74 && e.metaKey && e.altKey) {
      window.frame.openDevTools();
    }
  });
});

请,如果你对这门学科有任何了解,你会非常感激的:

我找到了一种使用键盘快捷键的方法

在ready事件中,我刚刚添加了命令,如下所示:

window.on('ready', function(){
  window.require = require;
  window.process = process;
  window.module = module;
  window.addEventListener('keydown', function(e){
    // console.log(e.keyCode);
    // SELECT ALL (CMD+A)
    if (e.keyCode == 65) {
      window.document.execCommand('selectAll');
    }
    // COPY (CMD+C)
    if (e.keyCode == 67) {
      window.document.execCommand('copy');
    }
    // EXIT (CMD+M)
    if (e.keyCode == 77) {
      window.frame.minimize();
    }
    // EXIT (CMD+Q or CMD+W)
    if (e.keyCode == 81 || e.keyCode == 87) {
      window.close();
    }
    // PASTE (CMD+V)
    if (e.keyCode == 86) {
      window.document.execCommand('paste');
    }
    // CUT (CMD+X)
    if (e.keyCode == 88) {
      window.document.execCommand('cut');
    }
    if (e.keyIdentifier === 'F12' || e.keyCode === 74 && e.metaKey && e.altKey) {
      window.frame.openDevTools();
    }
  });
});
希望这对别人有帮助