我在提交按钮和表单上有一个简单的html页面和事件处理程序。事件处理函数打印到控制什么是事件上传。
<html>
<head>
<script type="text/javascript" src="../js/jquery-2.1.1.js"></script>
</head>
<body>
<form id="formId" method="post">
<input id="inpSbm" name="inpSbm" type="submit" value="SubmitTest" class="lockDoubleClick"/>
</form>
</body>
<script>
$(document).ready(function () {
console.log("on ready");
$(".lockDoubleClick").each(function () {
var btn = $(this);
btn.click(function () {
console.log("click")
});
btn.dblclick(function () {
console.log("double click")
});
btn.closest('form').submit(function () {
console.log("submit form");
});
});
});
</script>
</html>
在IE11中,当我双击提交按钮时,我在控制台中看到以下内容:
click
submit form
on ready
click
double click
为什么我在页面准备好后点击并双击事件?
答案 0 :(得分:0)
因为双击是计算史上最愚蠢的想法之一。
有些用户可以非常快速地双击。还有其他人在时间限制内几乎无法进入,这是双击和两个单打之间的唯一区别。这意味着当计算机看到第一次单击时,它必须等待很长时间才能看到用户是否要再次单击。用户讨厌这个;它使界面看起来很慢。
唯一的解决方案是双击&#39;实际上只需点击两下即可点击该应用它们完全相同,只是第二个有一个小标志,表示它在双击的截止日期之前进入。
如果出于任何原因你必须同时接受双击并单击同一个对象,当第二个用户到处实际按下按钮时,你必须能够反转第一次点击的效果迟来的双击。