KeyDown是一個由JavaScript提供的非常基本的事件。這個事件可以檢測在頁面中有任何一個鍵被按下。當按下一個鍵時,KeyDown事件將觸發并且與這個事件相關聯的代碼將會被執行。可以使用此事件來創建許多有趣和交互式的功能,如:動態調整文本輸入框的尺寸或創建類似于游戲的動態圖像。下面我們來學習如何使用PHP來實現按鍵事件的檢測。
<?php
if(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混合代碼。<?php
if(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的混合代碼文件。通過此代碼,您可以檢測按鍵事件并顯示已經按下的鍵。