异想天开的懒虫
2016-02-05 16:56
var data=['iphone5','Ipad','三星笔记本','佳能相机','惠普打印机','谢谢参与','50元充值券','200元购物券'],
timer=null,
flag=0;
window.onload=function(){
var play = document.getElementById('play'),
stop = document.getElementById('stop');
//开始抽奖
play.onclick=playFun;
//停止抽奖
stop.onclick=stopFun;
//键盘事件
document.onkeyup=function(event){
event = event || window.event;
//打印按键键码的代码:
//console.log(event.keyCode);
if(event.keyCode==13){
if(flag==0){
playFun();
flag=1;
}else{
stopFun();
flag=0;
}
}
}
}
function playFun(){
var title=document.getElementById('title'),
play = document.getElementById('play');
clearInterval(timer);
timer=setInterval(function(){
var random=Math.floor(Math.random()*data.length);
title.innerHTML=data[random];
},50);
play.style.background='#999'
}
function stopFun(){
clearInterval(timer);
var play=document.getElementById("play");
play.style.background='#036'
}
这串代码中,虽然键盘事件用了flag=0或者1来判断抽奖是否开始了,但是鼠标事件里面没有啊。为什么当用鼠标点击开始,按下回车也能结束呢?
要按两次回车才能结束。
第一次按下回车的时候是停止不了的,但是第一次按下回车后就把flag=1了,
所以第二次按下回车就可以停止了
你应该是要按两次才能停止吧?第一次使得flag=1 然后第二次就因为flag=1而使得你再按次回车就停止了
DOM事件探秘
99545 学习 · 1197 问题
相似问题