做了个简单的例子 <html><head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>test</title> <script> var t = new Date().getTime(); var i=1; function add(){ var t1 = new Date().getTime(); if(t1-t>2*1000){//至少2秒触发一次 t = t1; var d = document.getElementById("d"); d.innerText = i++; } } </script> </head><body> <input type=button value="click me" onclick="add()"> <div id=d>0</div> </body></html>
或者换个问题吧:在我那个显示图片的网页上狂点鼠标(尽管我已经做出了限制不让图片被放大到很大)会出现stack overflow at line 0的问题,有没有知道这个是啥原因造成的?有没有官方的资料可以参考?谢谢。 Ps:这个是我的系统的功能的一部分,我用的是ActiveX实现的,图片是从服务器端取出来的。
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>
<script>
var t = new Date().getTime();
var i=1;
function add(){
var t1 = new Date().getTime();
if(t1-t>2*1000){//至少2秒触发一次
t = t1;
var d = document.getElementById("d");
d.innerText = i++;
}
}
</script>
</head><body>
<input type=button value="click me" onclick="add()">
<div id=d>0</div>
</body></html>
操作间隙周期 itertime。
,onmousedown
中,
if
当前客户端时间-operdate > itertime
执行鼠标操作
else
返回不执行,或者提示用户操作太快
// onMouse
var startTime = new Date().getTime();
function area_onmousedownFunc(){
if( ( event.button & 0x01 ) !=0){
var endTime = new Date().getTime();
if(endTime - startTime <=0){
event.cancelBubble = true;
event.returnValue = false;
return false;
}
}
}
document.onmousedown = area_onmousedownFunc;
我查过资料,好像是这个处理很快,要加一个alert去控制,但是我不想用alert,不知道有没有招啊。
应该是if(endTime - startTime <=1000){
var startTime = new Date().getTime();
function area_onmousedownFunc(){
if( ( event.button & 0x01 ) !=0){
var endTime = new Date().getTime();
if(endTime - startTime <=1000){
event.cancelBubble = true;
event.returnValue = false;
return false;
}
startTime = endTime;
}
}
document.onmousedown = area_onmousedownFunc;
如果在if(endTime - startTime <=1000)这个逻辑块里加一个alert就可以实现,不加就不行,鼠标照样响应。
Ps:这个是我的系统的功能的一部分,我用的是ActiveX实现的,图片是从服务器端取出来的。