鼠标和键盘单独使用都没问题。但是先用鼠标点击开始,再敲enter键,这时候没有办法停止。不知道我的代码哪里有错。
var arr = ['R','R','R','R','R','R','R','R','R','R','SR','SR','SR','SR','SR','SSR'];
var title = document.getElementById('title'),
timer = null,
flag = 0;
window.onload = function(){
var start = document.getElementById('start'),
stop = document.getElementById('stop');
//开始抽奖
start.onclick = startFunc;
//停止抽奖
stop.onclick = stopFunc;
//键盘事件
document.onkeyup = keyupFunc;
}
function startFunc(){
var title = document.getElementById('title'),
start = document.getElementById('start');
clearInterval(timer);
timer = setInterval(function(){
var random = Math.floor(Math.random()*arr.length);
title.innerHTML = arr[random];
},50)
start.disabled = true;
start.style.backgroundColor = '#ccc';
flag = 1;
}
function stopFunc(){
clearInterval(timer);
start.disabled = false;
start.style.backgroundColor = '#1aa';
flag = 0;
}
function keyupFunc(event){
event = event || window.event;
if(event.keyCode !== 13){
return null;
}else{
flag == 0 ? startFunc() : stopFunc();
}
}你这个我试过,是好的。能运行