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

 更新时间:2014年06月16日 16:57:02   投稿:whsnow  
input输入框显示的时候,需要自动获取焦点,用focus可以轻松搞定,但在火狐下input无法获取焦点,下面与大家分享下不错的解决方法
今天遇到了一个很棘手的问题,就是在做一些输入框的验证的时候,我这边项目的业务逻辑就是当我选中某个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。

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

相关文章

  • layui table 多行删除(id获取)的方法

    layui table 多行删除(id获取)的方法

    今天小编就为大家分享一篇layui table 多行删除(id获取)的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • Javascript的各种节点操作实例演示代码

    Javascript的各种节点操作实例演示代码

    实例演示对javascript的节点的各种操作。包括hasChildNodes(),removeChild(),appendChild(),replaceChild(),insertBefore(),cloneNode()等
    2012-06-06
  • 微信小程序实现拍照和相册选取图片

    微信小程序实现拍照和相册选取图片

    这篇文章主要为大家详细介绍了微信小程序实现拍照和相册选取图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • 了不起的11个JavaScript代码重构最佳实践小结

    了不起的11个JavaScript代码重构最佳实践小结

    这篇文章主要介绍了了不起的11个JavaScript代码重构最佳实践小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 对layui中table组件工具栏的使用详解

    对layui中table组件工具栏的使用详解

    今天小编就为大家分享一篇对layui中table组件工具栏的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • js命名空间写法示例

    js命名空间写法示例

    这篇文章主要介绍了js命名空间写法,以完整实例形式分析了JavaScript命名空间的写法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-12-12
  • JS简单实现tab切换效果的多窗口显示功能

    JS简单实现tab切换效果的多窗口显示功能

    这篇文章主要介绍了JS简单实现tab切换效果的多窗口显示功能,可实现响应鼠标事件的文字切换显示效果,涉及javascript页面元素遍历与样式变换相关操作技巧,需要的朋友可以参考下
    2016-09-09
  • 使用fileReader的一个坑及解决

    使用fileReader的一个坑及解决

    这篇文章主要介绍了使用fileReader的一个坑及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 如何自定义微信小程序tabbar上边框的颜色

    如何自定义微信小程序tabbar上边框的颜色

    这篇文章主要介绍了如何自定义微信小程序tabbar上边框的颜色,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • javascript实现左右缓动动画函数

    javascript实现左右缓动动画函数

    这篇文章主要为大家详细介绍了javascript实现左右缓动动画函数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11

最新评论