火狐下input焦点无法重复获取问题的解决方法


Posted in Javascript onJune 16, 2014

今天遇到了一个很棘手的问题,就是在做一些输入框的验证的时候,我这边项目的业务逻辑就是当我选中某个select的某个特定option的时候,需要显示出一个input输入框让用户输入东西,但是如果用户啥也不做,就必须弹出警告框让用户输入,等其输入后,我这边再将input隐藏掉。

因此,便产生了如下问题,input输入框显示的时候,需要自动获取焦点,此时,我是用的

document.getElementById('id').focus();

恩,尝试了一下,效果很好,不禁心中大喜,搞定!

但是天算不如人算,在我进行用火狐测试的时候,完蛋了,第一次刚将input显示出来的时候是好用的,但是随后我关闭alert提醒框的时候,input无法获取焦点了,?澹

问题棘手,又不明其所以,so,小小的查了一下网上大神们的解答方式,发现了如下一招,试验了一下,果然很好用!

在alert之后,将原来的

document.getElementByIdx('id').focus();

换成
window.setTimeout(function () { document.getElementById('id').focus();}, 0);

爽,问题解决!

setTimeout是指在载入后延迟指定时间后执行前面的表达式,当然在这里是延迟0ms之后执行function。

当我只是解决了这个问题,仍然不知道为什么在火狐下这样就能解决,如有哪位大神晓得,给下留言,让晚生学习一下,不胜感激!

Javascript 相关文章推荐
EditPlus注册码生成器(js代码实现)
Mar 25 Javascript
Jquery遍历节点的方法小集
Jan 22 Javascript
用jquery写的菜单从左往右滑动出现
Apr 11 Javascript
详解JavaScript中Date.UTC()方法的使用
Jun 12 Javascript
纯HTML5制作围住神经猫游戏-附源码下载
Aug 23 Javascript
详解React Native网络请求fetch简单封装
Aug 10 Javascript
JavaScript数据结构之单链表和循环链表
Nov 28 Javascript
浅谈Angular 的变化检测的方法
Mar 01 Javascript
JS html事件冒泡和事件捕获操作示例
May 01 Javascript
vue封装可复用组件confirm,并绑定在vue原型上的示例
Oct 31 Javascript
Vue实现图片与文字混输效果
Dec 04 Javascript
详解Typescript里的This的使用方法
Jan 08 Javascript
两种方法实现在HTML页面加载完毕后运行某个js
Jun 16 #Javascript
jquery实现在页面加载完毕后获取图片高度或宽度
Jun 16 #Javascript
jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7
Jun 16 #Javascript
jquery网页回到顶部效果(图标渐隐,自写)
Jun 16 #Javascript
解决checkbox的attr(checked)一直为undefined问题
Jun 16 #Javascript
Javascript实现简单的富文本编辑器附演示
Jun 16 #Javascript
javascript操纵OGNL标签示例代码
Jun 16 #Javascript
You might like
德劲1102收音机的打理维修案例
2021/03/02 无线电
php set_magic_quotes_runtime() 函数过时解决方法
2010/07/08 PHP
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
2014/08/19 PHP
php使用iconv中文截断问题的解决方法
2015/02/11 PHP
php实现文章评论系统
2019/02/18 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
jQuery 学习6 操纵元素显示效果的函数
2010/02/07 Javascript
如何确保JavaScript的执行顺序 之实战篇
2011/03/03 Javascript
javascript笔记 String类replace函数的一些事
2011/09/22 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
2013/04/01 Javascript
如何使用Javascript正则表达式来格式化XML内容
2013/07/04 Javascript
浅析webapp框架AngularUI的demo
2014/12/21 Javascript
JavaScript中的闭包
2016/02/24 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
angular+ionic 的app上拉加载更新数据实现方法
2017/01/16 Javascript
利用chrome浏览器进行js调试并找出元素绑定的点击事件详解
2021/01/30 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
微信小程序云开发使用方法新手初体验
2019/05/16 Javascript
vue移动端城市三级联动组件使用详解
2019/07/26 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
[01:11:37]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第一场 11.19
2020/11/19 DOTA
django定期执行任务(实例讲解)
2017/11/03 Python
Python实现学生成绩管理系统
2020/04/05 Python
django1.11.1 models 数据库同步方法
2018/05/30 Python
Python实现的简单读写csv文件操作示例
2018/07/12 Python
python队列Queue的详解
2019/05/10 Python
python实现12306登录并保存cookie的方法示例
2019/12/17 Python
广告设计应届生求职信
2014/03/01 职场文书
广告学专业毕业生自荐信
2014/05/28 职场文书
环境科学专业教师求职信
2014/07/12 职场文书
中秋晚会活动方案
2014/08/31 职场文书
春季运动会加油词
2015/07/18 职场文书
MongoDB数据库的安装步骤
2021/06/18 MongoDB
浅谈Web Storage API的使用
2021/06/23 Javascript
微信小程序 WeUI扩展组件库的入门教程
2022/04/21 Javascript