KeyDown是一个由JavaScript提供的非常基本的事件。这个事件可以检测在页面中有任何一个键被按下。当按下一个键时,KeyDown事件将触发并且与这个事件相关联的代码将会被执行。可以使用此事件来创建许多有趣和交互式的功能,如:动态调整文本输入框的尺寸或创建类似于游戏的动态图像。下面我们来学习如何使用PHP来实现按键事件的检测。<?phpif(isset($_POST['submit'])) {if(isset($_POST['keyup']) && $_POST['keyup'] != '') {echo "您按下了" . $_POST['keyup'] . "键";} else {echo "没有键被按下";}}?> 上面的代码用于检测一个表单的提交并且显示已经按下的按键。在提交后,它将会检查弄个键是否已经提交。如果键被提交了,那么它将在页面中显示这个键。否则,它将会显示"没有键被按下"的信息。现在我们需要创建一个表格来捕获keyDown事件。<form method="POST"><p><label>键: </label><input type="text" name="keyup"></p><p><input type="submit" name="submit" value="Submit"></p></form> 上面的代码是一个标准的HTML表格。它包括一个文本框以捕获按下的按键,并且一个提交按钮。在此表格中,我们如何让JS针对keydown事件的发生来进行检测并将键(keyCode)存储到文本框中?不担心,下面使用一个JavaScript代码块来处理这件事情。<script>document.addEventListener("keydown", function(event){document.getElementsByName('keyup')[0].value = event.keyCode;});</script> 当检测到keydown事件时,此代码块将会获取按下的键的keyCode值,并将其存储在文本框中。这样当用户输入时,他们将会知道已经按下了哪个键。现在看看完整的PHP与JS混合代码。<?phpif(isset($_POST['submit'])) {if(isset($_POST['keyup']) && $_POST['keyup'] != '') {echo "您按下了" . $_POST['keyup'] . "键";} else {echo "没有键被按下";}}?><form method="POST"><p><label>键: </label><input type="text" name="keyup"></p><p><input type="submit" name="submit" value="Submit"></p></form><script>document.addEventListener("keydown", function(event){document.getElementsByName('keyup')[0].value = event.keyCode;});</script> 在上述代码中,我们已经成功的建立了一个PHP和JS的混合代码文件。通过此代码,您可以检测按键事件并显示已经按下的键。 |