javascript判断元素是否已经focus
2016-04-21 09:32
417 查看
focus()函数作用
focus()是获得焦点事件。当一个文本框获得焦点时,它里面的文本就像“百度一下”首页上的百度搜索输入框那样会被自动选中,这样的操作可以利用onfocus来实现。
以下的文本框,当鼠标指针移过去时,里面的文字全部被选中:
这是怎么做的呢?看以下代码及解释:
<input type="text" name="url" value="" size="200" maxlength="255" onmousemove="this.focus();this.select();">
以上代码中,input标签内嵌入了onmousemove(鼠标指针经过)事件的JS语句,其等号后面的this.focus()意为其自身获得焦点;获得焦点的标志是该文本框内将出现输入光标,但要让其内的文字全部被选中,我们还得用上this.select()语句,它的意思就是选中全部文本框里的文字。
判断元素是否已经focus
document.activeElement属性始终会引用DOM中当前获得了焦点的元素。元素获得焦点的方式有用户输入(通常是按Tab键)、在代码中调用focus()方法和页面加载。先来看个小例子。<input id="btn" type="button" value="百度一下"> window.onload = function(){ var btn = document.getElementById("btn"); //页面加载获取焦点 alert(document.activeElement.id) // body //调用focus()方法获取焦点 btn.focus(); alert(document.activeElement.id) // btn };
扩展
HTML5除了新添加了document.activeElement属性外,还添加了
document.hasFocus()方法。这个方法用于确定文档是否获得了焦点,例:
window.onload = function(){ var btn = document.getElementById("btn"); btn.focus(); alert(document.hasFocus()) //true };
相关文章推荐
- 无废话ExtJs 入门教程八[脚本调试Firefox:firebug]
- JSP9大内置对象
- 无废话ExtJs 入门教程七[登陆窗体Demo:Login]
- JavaScript基础——调用
- JS中的Replace只会替换第一处解决办法
- 无废话ExtJs 入门教程六[按钮:Button]
- js 数组
- 无废话ExtJs 入门教程五[文本框:TextField]
- javaScript面试题大全
- 无废话ExtJs 入门教程四[表单:FormPanel]
- 俄罗斯方块游戏JavaScript代码
- IE11 F12工具报错 An error has occurredJSPlugin.3005
- 无废话ExtJs 入门教程三[窗体:Window组件]
- IE11 F12工具报错 An error has occurredJSPlugin.3005
- asp.net js与后台C#代码相互调用
- ExtJs 入门教程
- js实现的省市联动
- 无废话ExtJs 入门教程二[Hello World]
- JavaScript charAt() 方法
- 无废话ExtJs 入门教程一[学习方法]