[英]jQuery using keydown/keyup/keypress event to fire only one time instead of multiple times when key held down
我正在嘗試在板上每次按鍵后的第一個添加相同的div,並添加相同的類。
<div class="player1"></div>
$(document).on('keydown', function() {
$('.player1:last').after('<div class="player1">Go!<div>');
})
- 使用按鍵,當用戶按下鍵時,按下該鍵將觸發事件(並繼續運行)。 我想停止該操作,即使按下該鍵,也只能在按鍵時觸發一次功能。
您可以使用.one()
附加keydown
事件,在keyup
事件中再次使用.one()
重新附加keydown
事件,這樣可以防止在按住key時調用keydown
處理程序。
function handleKeyDown() { $('.player1:last').after('<div class="player1">Go!<div>'); } var d = $(document); d.one('keydown', handleKeyDown) .on("keyup", function() { d.one("keydown", handleKeyDown) })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> </script> <div class="player1"></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.