我正在为一个学校项目创建一个答题器游戏,出现的一个大错误是用户能够单击并按住按钮上的Enter键,从而使他们以加速的速度获得游戏货币。我想知道是否有人知道如何做到这一点,因此只能通过每隔X秒钟按住Enter键才能激活按钮?
例如:
我一直按住Enter键5秒钟,因此该按钮的操作仅被真正激活了5次。
按钮代码(如果有帮助,请使用Bootstrap 4)
<button id="Click" onclick="AddMoney()" type="button" class="btn btn-primary btn-clicker">Click!</button>
答案可能在JQuery或Javascript中
非常感谢您提供的所有帮助
答案 0 :(得分:0)
这可以防止用户向按钮中的Enter键发送垃圾邮件
var counter = 0;
var AddMoney = function() {
console.log('I was clicked ' + counter + ' times');
counter++;
}
$("#Click").keypress(function(e) {
//Enter key
if (e.which == 13) {
return false;
}
});
<script
src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" />
<button id="Click" onclick="AddMoney()" type="button" class="btn btn-primary btn-clicker">Click!</button>