我正在尝试制作一个程序,该程序可以查看是否在上次单击后2秒钟内单击了。 我的相同代码是:
document.addEventListener("click",do,false);
var lastBack=0;
function do(e){
if((new Date().getTime()-lastBack)<2000)
{ alert("you clicked within 2 seconds this time");}
else
{ document.write("Quickly click again");
lastBack=new Date().getTime(); }
}
我只是无法弄清楚它出了什么问题,但是当我单击时,它只显示“ 快速再次单击”,并且什么也没有发生。即使在长时间等待后单击,它也不会重复同一行。
答案 0 :(得分:1)
加载后再也不会document.write。该页面将被擦除
Why is document.write considered a "bad practice"?
What damage is done by document.write()?
do
是保留字。重命名该函数或使其匿名
var lastBack = 0;
function doIt(e) {
if ((new Date().getTime() - lastBack) < 2000) {
alert("you clicked within 2 seconds this time");
} else {
document.getElementById("message").innerHTML = "Quickly click again";
lastBack = new Date().getTime();
}
}
window.addEventListener("load", function() { // when page has loaded
document.addEventListener("click", doIt, false); // assign click handler
},false)
<span id="message"></span>