EventTarget事件:focus
EventTarget事件 - focus
当元素获得焦点时,focus事件将触发。这个事件和focusin之间的主要区别在于只有后者冒泡。
注意:与focus相反的是blur。
基本信息
接口 | FocusEvent |
---|---|
同步/异步 | 同步 |
是否冒泡 | 没有 |
是否可取消 | 没有 |
目标 | Window , Element |
是否组合 | 是 |
默认操作 | 没有 |
属性
属性 | 类型 | 描述 |
---|---|---|
target (只读) | EventTarget | 事件目标(DOM元素) |
type (只读) | DOMString | 事件的类型。 |
bubbles (只读) | Boolean | 事件是否正常冒泡。 |
cancelable (只读) | Boolean | 事件是否可以取消。 |
relatedTarget (只读) | EventTarget (DOM元素) | null |
示例
事件授权
有两种方法可以为此事件实现事件授权:通过使用focusin事件或将addEventListener()的useCapture参数设置为true。
请参阅blur参考页面上此示例的代码。
Window focus
此示例在失去焦点时更改文档的外观。它使用addEventListener()来监视focus和blur事件。
HTML
<p id="log">Click on this document to give it focus.</p>
CSS
.paused {
background: #ddd;
color: #555;
}
JavaScript的
function pause() {
document.body.classList.add('paused');
log.textContent = 'FOCUS LOST!';
}
function play() {
document.body.classList.remove('paused');
log.textContent = 'This document has focus.';
}
const log = document.getElementById('log');
window.addEventListener('blur', pause);
window.addEventListener('focus', play);
规范
规范 | 状态 | 注释 |
---|---|---|
UI事件 | Working Draft | 添加了此事件的组成信息 |
文档对象模型(DOM)3级事件规范 | Obsolete | 初步定义 |
浏览器兼容性Section
我们将兼容性数据转换为机器可读的JSON格式。
- 电脑端
Chrome | Edge | Firefox(Gecko) | Internet Explorer | Opera | Safari | |
---|---|---|---|---|---|---|
基本支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
- 移动端
特征 | Android | 适用于Android的Chrome | Edge | Firefox Mobile(Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
基本支持 | ? | ?支持 | ? | ? | ? | ? |
在Firefox 24之前该接口是Event。