博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js事件类型中的异类一焦点事件
阅读量:6832 次
发布时间:2019-06-26

本文共 706 字,大约阅读时间需要 2 分钟。

前言

有些鸟是不会飞的,有些事件是不会冒泡的。 -- 佚名

焦点事件

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

  • blur:在元素失去焦点时触发。这个事件不会冒泡;所有浏览器都支持它。
  • DOMFocusIn: 只有opera支持
  • DOMFocusOut: 只有opera支持
  • focus:在元素获得焦点时触发,不会冒泡
  • focusin:在元素获得焦点时触发,与focus等价,但是会冒泡
  • focusout: 在元素失去焦点时触发

这一类事件中最主要的两个是focus和blur,它们都是javscript早期就得到所有浏览器支持的事件。这些事件的最大问题是不冒泡。因此,IE的focusin和focusout与Opera的DOMFocusIn和DOMFocusOut才会重叠。IE的方式最后被DOM3级事件采纳为标准方式。

当焦点从页面中的一个元素移动到另一个元素,会依次触发下列事件:

  • focusout在失去焦点的元素上触发
  • focusin在获得焦点的元素上触发
  • blur在失去焦点的元素上触发
  • DOMFocusOut在失去焦点的元素上触发
  • focus在获得焦点的元素上触发
  • DOMFocusIn在获得焦点的元素上触发 其中,blur、DOMFocusOut和focusout的事件目标是失去焦点的元素;而focus、DOMFocusIn和focusin的事件目标是获得焦点的元素。

即使focus和blur不冒泡,也可以在捕获阶段侦听它们。

下面演示

转载地址:http://zsnkl.baihongyu.com/

你可能感兴趣的文章
跨库复制数据
查看>>
从零实现一个高性能网络爬虫(一)网络请求分析及代码实现
查看>>
AIX的vmstat命令详解
查看>>
快速掌握Redis——第六招:持久化 (数据备份与恢复)
查看>>
Linux 下ffmpeg视频转码实战二——参数宝典
查看>>
原生的必定美丽
查看>>
android LinearLayout的相关错误
查看>>
谢烟客---------Linux之压缩解压缩及归档工具的使用
查看>>
常用jvm参数配置以及提供系统堆益处日志监控方法
查看>>
《WPF揭秘》勘误表
查看>>
MySQL数据库服务器优化详细
查看>>
Linux常用命令——date
查看>>
Linux常用命令——w、who
查看>>
Linux常用命令——awk
查看>>
From Word Embeddings To Document Distance
查看>>
Oracle的体系结构(三)
查看>>
nginx + django 两种配置模式
查看>>
linux运维学习之Oracle数据库的安装和扩展小优化
查看>>
linux-mysql
查看>>
招人已了,招人心得跟47道面试题加答案放出来
查看>>