84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
做了一个抽奖的小东西,开始和停止的按钮是button标签的。当我用鼠标按下开始,输入完人数之后,按回车暂停是可以的,但再按一次回车会开始后瞬间停止,而不是我再按一次回车才结束,如果不用button标签的话是可以的,又或者是我先点击了一下页面再按回车也不瞬间停止,想知道为什么?
代码:
抽奖
抽奖XD 1 开始 停止
1
点击一次button之后,焦点就定位到了button上,此时每次按回车,button都就会被点击两次。换成span就不会出现焦点的问题
原理如楼上所说,补充下答案。
function playFun (e){ e && e.target.blur() if(!num){ num = window.prompt("参加这次抽奖的人数:"); if(!num){ playFun(); } } clearInterval(timer); timer = setInterval(function(){ var random = Math.floor(Math.random()*num+1); showNum.innerHTML=random; },50); showNum.style.background = '#FFF'; showNum.style.color = '#000'; flag=1; } function stopFun (e){ e && e.target.blur() clearInterval(timer); showNum.style.background = '#000'; showNum.style.color = '#FFF'; flag=0; }
焦点在按钮上的时候, 按下enter就相当于一次鼠标左键点击.还有, button标签是不被建议使用的, 所以直接替换掉不用犹豫
点击一次button之后,焦点就定位到了button上,此时每次按回车,button都就会被点击两次。换成span就不会出现焦点的问题
原理如楼上所说,补充下答案。
焦点在按钮上的时候, 按下enter就相当于一次鼠标左键点击.
还有, button标签是不被建议使用的, 所以直接替换掉不用犹豫