Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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
Php 如何在web上捕获击键?_Php_Javascript_Function_Input_Keystroke - Fatal编程技术网

Php 如何在web上捕获击键?

Php 如何在web上捕获击键?,php,javascript,function,input,keystroke,Php,Javascript,Function,Input,Keystroke,使用PHP、JS、HTML或类似的东西如何捕获密钥库?例如,如果用户按ctrl+f,甚至可能只按f,就会出现特定的功能 ++++++++++++++++++++++++编辑+++++++++++++++++++ 好的,这是正确的,因为我不能让它工作。我为我的N00B感到抱歉,这是一个简单的问题,对于jQuery来说是一个新问题,并且仍然在学习越来越多关于JS的知识 <script> var element = document.getElementById('capture'

使用PHP、JS、HTML或类似的东西如何捕获密钥库?例如,如果用户按ctrl+f,甚至可能只按f,就会出现特定的功能

++++++++++++++++++++++++编辑+++++++++++++++++++ 好的,这是正确的,因为我不能让它工作。我为我的N00B感到抱歉,这是一个简单的问题,对于jQuery来说是一个新问题,并且仍然在学习越来越多关于JS的知识

<script>    
var element = document.getElementById('capture');
    element.onkeypress = function(e) { 
       var ev = e || event;
       if(ev.keyCode == 70) {
          alert("hello");
       }
    }
</script>
<div id="capture">
Hello, Testing 123
</div>
++++++++++++++++编辑++++++++++++++++++

这是所有的东西,但我不能让它工作:

<link rel="icon" href="favicon.ico" type="image/x-icon">
<style>
* {
margin: 0px
}  

div {
    height: 250px;
    width: 630px;
    overflow: hidden;
    vertical-align: top;
    position: relative;
    background-color: #999;
}
  iframe {
    position: absolute;
    left: -50px;
    top: -130px;
  }
</style>
<script>
document.getElementsByTagName('body')[0].onkeyup = function(e) { 
   var ev = e || event;
   if(ev.keyCode == 70 && ev.ctrlKey) { //control+f
      alert("hello");
   }
}
</script>
<div id="capture">
Hello, Testing 123<!--<iframe src="http://www.pandora.com/" scrolling="no" width="1000" height="515"frameborder="0"></iframe>-->
</div>
+++编辑+++


多亏了雅各布,我本以为我已经修好了,但当我在FF和IE中尝试它时,目前使用的是chrome,它确实起作用了,但没有起作用。这个脚本只是针对一个只有我才能看到的个人页面,所以这不是最大的交易,但为了将来的参考,我只想知道为什么它在IE或FF中都不起作用。

您正在寻找与按键相关的javascript事件。这里有一些恼人的浏览器不兼容,因此最好使用jQuery之类的JS库,在这里可以使用jQuery keypress方法,但可以从javascript onkeypress事件中获取所需的数据。

您正在查找与按键相关的javascript事件。这里存在一些恼人的浏览器不兼容问题,因此最好使用jQuery之类的JS库,在这里可以使用jQuery keypress方法,但可以从javascript onkeypress事件中获取所需的数据。

使用jQuery:

你可以使用

关于捕获不同关键事件的精彩文章:

编辑:

JavaScript

下面是一些很好的文章,可以在javascript中通过很好的演示实现这一点:

使用jQuery:

你可以使用

关于捕获不同关键事件的精彩文章:

编辑:

JavaScript

下面是一些很好的文章,可以在javascript中通过很好的演示实现这一点:


当然,实现这一点的唯一方法是通过JavaScript,您可以这样做:

window.onload = function() {
   document.getElementsByTagName('body')[0].onkeyup = function(e) { 
      var ev = e || event;
      if(ev.keyCode == 70) {//&& ev.ctrlKey) {
         //do something...
      }
   }
};
要查找所需的特定密钥代码,请参阅本文:


当然,实现这一点的唯一方法是通过JavaScript,您可以这样做:

window.onload = function() {
   document.getElementsByTagName('body')[0].onkeyup = function(e) { 
      var ev = e || event;
      if(ev.keyCode == 70) {//&& ev.ctrlKey) {
         //do something...
      }
   }
};
要查找所需的特定密钥代码,请参阅本文:


您最好捕获窗口上的所有关键点,而不是像前面提到的其他答案那样捕获特定元素上的关键点笔划

因此,使用本机javascript:

window.onload = function (){
 eventHandler = function (e){
    if (e.keyCode == 70 && e.ctrlKey)
    {
      //do stuff
      //console.log(e);
    }
  }

  window.addEventListener('keydown', eventHandler, false);
}
使用JQuery:

$(document).ready(function(){
  $(window).keydown(function (e) {
    if (e.keyCode == 70 && e.ctrlKey)
    {
        //do stuff
    }

  });
});

您最好捕获窗口上的所有关键点,而不是像前面提到的其他答案那样捕获特定元素上的关键点笔划

因此,使用本机javascript:

window.onload = function (){
 eventHandler = function (e){
    if (e.keyCode == 70 && e.ctrlKey)
    {
      //do stuff
      //console.log(e);
    }
  }

  window.addEventListener('keydown', eventHandler, false);
}
使用JQuery:

$(document).ready(function(){
  $(window).keydown(function (e) {
    if (e.keyCode == 70 && e.ctrlKey)
    {
        //do stuff
    }

  });
});


@Naveed操作没有使用jQuery。@Jacob Relkin:Hmmmm。好的,但我认为OP不知道jQuery。因此,建议使用jQuery轻松地完成这项工作。在这种情况下,jQuery是不必要的。DOM可以很好地处理键盘事件,并且对现代浏览器的支持也很好。事实上,大多数东西根本不需要jQuery,我完全同意@Delan@NAVEEEDOP没有使用jQuery。@Jacob Relkin:Hmmmm。好的,但我认为OP不知道jQuery。因此,建议使用jQuery轻松地完成这项工作。在这种情况下,jQuery是不必要的。DOM可以很好地处理键盘事件,并且对现代浏览器的支持也很好。事实上,大多数东西根本不需要jQuery。我完全同意@DelanAre,你能在JS Fiddle上测试它吗?当我在你提供的链接中按Ctr+F时,它会打开浏览器搜索选项;当我按下ctrl+f时,警报为“你好”,什么也不会发生。我试着删除了&&ev.ctrlKey,只按了f,但仍然没有成功。@NAVEED您需要关注右下角的按钮。@Sean您使用的浏览器是什么?顺便说一句,我想我更希望它是f,因为当时我没有考虑它,但是是的,ctrl+f打开了搜索。您能在JS Fiddle上测试它吗?当我在你提供的链接中按Ctr+F时,它会打开浏览器搜索选项;当我按下ctrl+f时,警报为“你好”,什么也不会发生。我试着删除了&&ev.ctrlKey,只按了f,但仍然没有成功。@NAVEED您需要关注右下角的。@Sean您使用的浏览器是什么?顺便说一句,我想我更希望它是f,因为当时我没有考虑它,但是的,ctrl+f打开了搜索。啊。。。好的,正如我所说,我这样做是为了个人,而不是公众,所以浏览器兼容性并不重要。啊。。。好的,正如我所说的,我这样做是为了个人,而不是公众,所以浏览器兼容性并不重要。