发表于: 2017-05-13 20:04:56

1 872


今天完成的任务:

修改了一些task3的bug,基本没bug了。

学习有限状态机

明天计划的任务:

写css样式

理清游戏逻辑


遇到的问题:

如图是两个text输入框,id分别为a,b:

document.getElementbyId("a").onblur()=function(){
   alert("11111");
};

document.getElementbyId("b").onblur()=function(){
   alert("22222");
};

我为两个input框设置了onblur事件,当input框失焦后,会分别触发alert弹出框。若我点击a,然后再点击b,则会触发无限弹窗的bug。后来了解到这是chrome浏览器的bug。当点击b时,a失焦,b聚焦,触发a的alert。点击弹出的alert框确认按钮,b失焦,然后chrome自动聚焦到b,触发b的alert,点击alert,b再失焦,然后chrome自动聚焦到b,触发b的alert。。。。。。。。


解决方法为在函数中加入this.blur();取消chrome的聚焦行为:

document.getElementbyId("a").onblur()=function(){
   this.blur();
   alert("11111");
};

document.getElementbyId("b").onblur()=function(){
   this.blur();
   alert("22222");
};


收获:

1,焦点事件:

onfocus:当元素获取到焦点的时候触发

onblur:当元素失去焦点的时候触发

obj.focus();给指定的元素设置焦点

obj.blur();取消指定元素的焦点





返回列表 返回列表
评论

    分享到