javascript - 在利用button标签时,鼠标事件和键盘事件切换会出错?
習慣沉默
習慣沉默 2017-05-18 10:54:36
0
3
491

做了一个抽奖的小东西,开始和停止的按钮是button标签的。当我用鼠标按下开始,输入完人数之后,按回车暂停是可以的,但再按一次回车会开始后瞬间停止,而不是我再按一次回车才结束,如果不用button标签的话是可以的,又或者是我先点击了一下页面再按回车也不瞬间停止,想知道为什么?

代码:


 抽奖  


抽奖XD

1


習慣沉默
習慣沉默

全部回复 (3)
Peter_Zhu

点击一次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标签是不被建议使用的, 所以直接替换掉不用犹豫

        最新下载
        更多>
        网站特效
        网站源码
        网站素材
        前端模板
        关于我们 免责声明 Sitemap
        PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!