页面加载完成,输入框获得焦点失败
来源:互联网 发布:淘宝企业店铺怎么退出 编辑:程序博客网 时间:2024/06/03 23:07
首先,我们要获取文本框对象,这就注定了我们这段脚本必须在文本框渲染完成后才执行,参考多数登录框的设计方案,这类脚本一般都是放在HTML的最后部分,位置在之前,这样在input加载完成后才执行脚本,避免找不到对象的问题。
其次,Obj.focus()方法需要延时调用,并不等于说我们input文本框呈现出来就可以立即设置focus焦点,大部分情况下这样做也许可以成功,但是多测试几次你会发现有时焦点并不能成功设置,这里的原因是某些浏览器在input文本框渲染完成后不能立即为文本框启用获得焦点的特性,所以我们需要做一定的延时,在JavaScript里延时的方式是通过setTimeout函数,时间设置大概在200毫秒即可(参考WordPress的后台登录)。
最后,即使我们采用延时等措施,仍然会有小几率的情况导致无法获取焦点甚至让脚本执行出错,所以我们需要用try {} catch {} 屏蔽错误,无法获取焦点是小事,脚本出错就坑爹了。下面是实现的代码:
文本框获取焦点
这里写代码片
后来发现WP的登录页面除了focus还有select方法,原来在用户名记住的情况下,用户名文本框获得焦点后如果我们要清除原先的用户名,只有移动方向键或者使用鼠标选中然后删除,而select正好替我们做了选中这个事情,要输入就直接输入就行了,以上面的HTML为参考,具体的代码如下:
setTimeout( function(){ try{ var t = document.getElementById('userName'); t.focus(); t.select(); } catch(e){}}, 200);
转自:http://wangye.org/blog/archives/150/
0 0
- 页面加载完成,输入框获得焦点失败
- 页面加载完成后表单获得焦点
- 使用js实现页面加载后某输入框获得焦点
- 加载页面文本框自动获得焦点
- 输入框获得焦点和失去焦点
- 使用jQuery制作高级炫酷吊炸天表单,页面加载完成文本框获得焦点,文本框设置默认文本,文本字数动态显示.....
- 从输入URL到页面加载完成
- 从输入URL到页面加载完成
- javascript——移动端input,textarea输入框获得焦点页面上移
- input 输入框默认获得焦点
- 当输入框获得焦点时
- Jquery输入框获得/失去焦点方式
- 圆角输入框获得焦点时是方角
- jquery指定输入框获得焦点
- 获得输入焦点
- 页面加载时自动获得文本框的焦点!
- 页面元素获得焦点
- 页面从输入 URL 到页面加载显示完成过程
- SpringMVC集成RabbitMQ
- 【LeetCode】50. Pow(x, n)
- 数据库优化
- 输入一个字符串,同时输入帧头和帧尾(可以是多个字符),将该字符串中合法的帧识别出来.
- 用户及文件权限管理
- 页面加载完成,输入框获得焦点失败
- 回滚机制——《亿级流量》
- Linux命令之cat命令的使用
- 棋盘覆盖问题算法分析与实现(递归)
- MySQL数据库(25)
- 笔记:cnpm镜像安装
- Javascript基础系列16:Javascript的原型链和继承详解
- 事件与状态机 事件驱动编程
- 数学题