javascript获得焦点

javascript中如何处理焦点事件

焦点作为javascript中的一个重要功能,基本上和页面交互都离不开焦点。但却少有人对焦点管理系统地做总结归纳。本文就javascript中的焦点管理作详细介绍

1、焦点元素

默认情况下,只有表单元素可以获得焦点。因为只有表单元素可以交互

input type=”text” value=”223″

让非表单元素获得焦点也是有办法的,先将tabIndex属性设置为-1,再调用focus()方法

div id=”test” style=”height:30px;width:100px;background:lightgreen”div/div

button id=”btn”div元素获得焦点/button

script

btn.onclick = function(){

    test.tabIndex = -1;

    test.focus();    

}

test.onfocus = function(){

    this.style.background = ‘pink’;

}

/script

2、activeElement

document.activeElement属性用于管理DOM焦点,保存着当前获得焦点的元素

注:该属性IE浏览器不支持

div id=”test” style=”height:30px;width:100px;background:lightgreen”div/div

button id=”btn”div元素获得焦点/button

script

console.log(document.activeElement);//body

btn.onclick = function(){

    console.log(document.activeElement);//button

    test.tabIndex = -1;

    test.focus();    

    console.log(document.activeElement);//div

}

/script

3、获得焦点

元素获得焦点的方式有4种,包括页面加载、用户输入(按tab键)、focus()方法和autofocus属性

【1】页面加载

默认情况下,文档刚刚加载完成时,document.activeElement中保存的是body元素的引用。文档加载期间,document.activeElement的值为null

【2】用户输入(按tab键)

用户通常可以使用tab键移动焦点,使用空格键激活焦点。比如,如果焦点在一个链接上,此时按一下空格键,就会跳转到该链接

说到tab键,就不能不提到tabindex属性。tabindex属性用来指定当前HTML元素节点是否被tab键遍历,以及遍历的优先级

1、如果tabindex=-1,tab键跳过当前元素

2、如果tabindex=0,表示tab键将遍历当前元素。如果一个元素没有设置tabindex,默认值就是0

3、如果tabindex大于0,表示tab键优先遍历。值越大,就表示优先级越小

【3】focus()

focus()方法用于将浏览器的焦点设置到表单字段,即激活表单字段,使其可以响应键盘事件

注:前面介绍过,若非表单元素,设置为tabIndex为-1,也可以获取焦点

【4】autofocus

HTML5表单字段新增了autofocus属性,只要设置这个属性,不用javascript就能自动把焦点移动到相应字段 

[注意]该属性只能用于表单元素,普通元素即使设置tabIndex=”-1″也不生效

【5】hasFocus()

document.hasFocus()方法返回一个布尔值,表示当前文档之中是否有元素被激活或获得焦点。通过检测文档是否获得了焦点,可以知道是不是正在与页面交互

4、失去焦点

如果使用javascript使元素失去焦点,那么就要使用blur()方法

blur()方法的作用是从元素中移走焦点。在调用blur()方法时,并不会把焦点转移到某个特定的元素上;仅仅是将焦点从调用这个方法的元素上面移走而已

5、焦点事件

焦点事件会在页面获得或失去焦点时触发。利用这些事件并与document.hasFocus()方法及 document.activeElement属性配合,可以知晓用户在页面上的行踪

【1】焦点事件共包括下面4个

blur

blur事件在元素失去焦点时触发。这个事件不会冒泡

focus

focus事件在元素获得焦点时触发。这个事件不会冒泡

focusin

focusin事件在元素获得焦点时触发。这个事件与focus事件等价,但它冒泡

focusout

focusour事件在元素失去焦点时触发。这个事件与blur事件等价,但它冒泡

[注意] 关于focusin和focusout事件,除了IE浏览器支持DOM0级事件处理程序,其他浏览器都只支持DOM2级事件处理程序

javascript获得焦点

js中如何获得焦点?

用自带的focus()就可以了

利用js中input/实现文本框默认获取输入焦点完整代码实现如下:

html

 

head

     

meta http-equiv=”Content-Type” content=”text/html; charset=ISO-8859-1″

                  titleInsert title here/title

   

script type=”text/javascript”       

//输入框获取鼠标焦点       

function autoFocus(){

           

var pFocus = document.getElementById(“password”);

pFocus.focus();

   

pFocus.select();

   

}    

/script

 

/head

 

body onload=”autoFocus()”

     

div id=”loginform”

     

h1 style=”font-size:1.5em;padding:20px;”输入密码/h1

     

form action=”${pageContext.request.contextPath}/” method=”post”

   

input id=”password” type=”password” name=”password”

 

input type=”submit” value=”提交”

   

/form

   

/div

 

/body

/html

扩展资料:

JavaScript 使我们有能力创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素都可以产生某些可以触发JavaScript函数的事件。比方说,我们可以在用户点击某按钮时产生一个 onClick 事件来触发某个函数。事件在 HTML 页面中定义 。

参考资料:

JavaScript官方API接口-:focus

百度百科-JavaScript

W3cschool-获得字段焦点

javascript 怎么样使控件 获得焦点

使用.focus()方法来获得焦点的方法

一般窗口组件都有此方法,如window文本 密码 按钮 单选按钮 复选按钮 选择菜单 选择菜单的子表项 文本区域 相应的聚焦的事件是 onFocus 代码 Script functioncheckPassword(testObject) {

if (testObject.value.length 4) {alert(“密码长度不得小于四”);

testObject.focus();testObject.select();

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年3月27日 12:30:15
下一篇 2024年3月27日 12:41:39

相关推荐

  • javascript如何调试,js 调试

    网页显示javascript错误..怎么解决 网页显示javascript错误的解决办法:首先打开浏览器,选择Internet选项;然后切换到安全标签页中,单击自定义级别进入;接着选择“启用”项,并点击“是”;最后退出设置即可。请多刷新几次或者把浏览器关掉再打开。 检查JavaScript代码是否有语法或逻辑错误,并进行修复。更新您的浏览器版本或更换为兼容当…

    2024年5月23日
    4400
  • 包含javascript画圆的词条

    javascript画圆参数问题 1、第三个参数是圆的半径。第四个参数代表圆周起始位置。0 PI就是起始位置。沿顺时针路线,分别是0.5 PI(正下方),1 PI和5 PI(正上方),为画饼图提供了扇形范围的依据。 2、.box{width:200px;height:200px;border-radius:50%;overflow:hidden;} 试试这个…

    2024年5月23日
    4600
  • javascript常量,js中如何定义常量

    请问while(*p!=\0)这是什么意思啊 1、p明显是个指针,while(p)就是说指针如果有指向,就执行while下的语句,如果是0,也就是null,指针没有指向任何地址,也就是空指针。*p=head-next 这个可能是是树之类的数据结构。 2、\0就是0x00,代表字符串至此结束,退出循环。 3、while( *p ) 就是判断 (*p) 的值只要…

    2024年5月23日
    4300
  • 首字母大写javascript,首字母大写英语怎么说

    javascript怎么使用字符串函数进行首字母大写 js中转换字符串小写字母为大写字母的方法有:使用toUpperCase()方法、使用toLocaleUpperCase()方法。使用toUpperCase() 方法作用:把指定字符串中的小写字母全部转换为大写字母,最后返回一个新的字符串。 截取第一个位置变成大写,然后从第一个位置截取所有。 toLower…

    2024年5月23日
    4800
  • javascript吧,javaScript基础心得体会

    JavaScript真的容易学吗? 1、JavaScript是一种轻量级的编程语言,是一门非常容易入门的语言。JavaScript语法比较简单,应用面也会非常的广,有比较好的就业市场。 2、JavaScript面向对象、函数进阶、递归及其应用、正则表达式、ES6等等JS的高级课程内容。高级课程内容相对难度会有所提升,但是只要能理解了相应的编程思维,整体掌握难…

    2024年5月23日
    3900
  • 怎样学习javascript,怎样学好javascript

    javascript基础入门 1、JavaScript最初是由网景公司的Brendan Eich在1995年创建的,最初被称为LiveScript。后来,它被重命名为JavaScript,以更好地与Sun Microsystems的Java语言相匹配。 2、如果你想快速学会 JavaScript,你可能要掌握“跳章学习”的方法。左边可以看到本教程整个结构树。…

    2024年5月23日
    3600
  • javascript判断函数存在,js判断是否有值

    请教一个JavaScript函数判断问题 1、) typeof 运算符 typeof 是一元运算符,返回结果是一个说明运算数类型的字符串。如:number,string,boolean,object,function,undefined(可用于判断变量是否存在)。 2、给函数做一个返回值,然后判断返回值就行了。 3、说明:isNaN() 函数可用于判断其参数…

    2024年5月22日
    4000
  • ipad可以编写javascript,iPad可以编写程序吗?

    苹果APP开发需要掌握哪种语言? 1、首先,要开发苹果app,必须要掌握苹果app开发工具,那就是Objective-c和c语言。在开发苹果app软件的时候,需要走以下流程。 2、Objective-C语言 Objective-C是C语言衍生出来的,继承了C语言的特性,属于面向对象的语言。Objective-C这是适用于IOS智能操作系统的APP开发语言,是…

    2024年5月22日
    4900
  • javascript验证用户名,js验证用户名与数据库中不能重复

    web中JavaScript的用户验证怎么写? 1、首先不管你是在EXCEL里检测用户存在还是在数据库里检测 始终需要ASP和JAVASCRIPT吧 假设你已经知道如何利用ASP判断EXECL或数据库是否有这个用户 ajax.asp //这个页面用于获取URL来的用户名做判断,判断数据库或EXCEL是否有用户。 2、临时按照你的要求写了一个,有什么问题可以再…

    2024年5月22日
    4000
  • javascript图形编程,js图形编辑器

    基于SVG的web页面图形绘制API介绍及编程演示 在HTML5中我们可以通过使用svg标签内联SVG,使用HTML的标签、标签、标签、标签导入SVG图像,使用CSS background属性导入SVG图像。 SVG是一种基于XML的矢量图形格式。SVG用于在Web和其他环境中显示各种图形;它允许我们编写可缩放的二维图形,并可通过CSS或JavaScript…

    2024年5月21日
    4100

发表回复

登录后才能评论



关注微信