Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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捕获ctrl+;alt+;C_Javascript_Jquery_Key Bindings_Hotkeys - Fatal编程技术网

Javascript捕获ctrl+;alt+;C

Javascript捕获ctrl+;alt+;C,javascript,jquery,key-bindings,hotkeys,Javascript,Jquery,Key Bindings,Hotkeys,在我的web应用程序中,我想使用ctrl+alt+c作为热键 我读了很多关于堆栈溢出的文章,并提出了以下解决方案 $(document).keydown(function(e){ if(e.ctrlKey && e.altKey && e.which == 99){ e.preventDefault(); window.prompt("Copy to clipboard: Ctrl+C, Enter", text); } });

在我的web应用程序中,我想使用ctrl+alt+c作为热键

我读了很多关于堆栈溢出的文章,并提出了以下解决方案

$(document).keydown(function(e){
   if(e.ctrlKey && e.altKey && e.which == 99){
     e.preventDefault();
     window.prompt("Copy to clipboard: Ctrl+C, Enter", text);
   }
});
这在chrome中不起作用。我试过调试

我注意到的是,只要我按下ctrl键,它就开始工作,好像条件失败了,它就出来了


我如何才能让它工作。

使用事件
键代替


您的代码中有两个错误

1st : keycode of c is 67
2nd : text variable is undefined.
所以最后的代码是

$(document).keydown(function(e){
   if(e.ctrlKey && e.altKey &&  e.which == 67){
      e.preventDefault();
       prompt("Copy to clipboard: Ctrl+C, Enter","text");
   }
  });

你可以检查小提琴

也许你会对
e感兴趣。对于
c
来说,哪个
67
,而不是
99
。我不明白你的意图吗?拨弄之前的评论(太晚了,无法编辑)怪异。。。在你的摆弄下,我可以让“失败”出现,但不能让成功出现。当我按下ctrl+alt+c时,我什么也得不到,没有失败,没有成功。没有道理。铬测试。可能chrome正在使用该组合键?哪个浏览器/版本?我在IE 11、Firefox最新版本、Chrome 32、Chrome 31.0.1650.63版本上进行了测试,ctrl+任何东西都不会触发该事件。但它确实使用了keydown。即使没有它,按下ctrl键时也不会触发。
$(document).keydown(function(e){
   if(e.ctrlKey && e.altKey &&  e.which == 67){
      e.preventDefault();
       prompt("Copy to clipboard: Ctrl+C, Enter","text");
   }
  });