codecamp

onfocusout 事件

onfocusout 事件

事件对象参考手册 事件对象

实例

在 input 输入框即将失去焦点时执行 JavaScript :

<input type="text" onfocusout="myFunction()">

尝试一下 »

本章节底部包含更多实例。


定义和用法

onfocusout 事件在元素即将失去焦点时触发。

提示: onfocusout 事件类似于onblur 事件。 主要的区别是 onblur 事件不支持冒泡。因此,如果你需要查看元素或其子元素是否获取焦点,需要使用 onfocusout 事件。

提示: 虽然 Firefox 不支持 onfocusout 事件,但你可以通过使用 onfocus (使用addEventListener()方法的可选参数 useCapture)的捕获监听事件来查看元素或其子元素是否失去焦点。

提示: onfocusout 事件的相反事件为onfocusin 事件。


浏览器支持

事件          
onfocusout Yes Yes 不支持 Yes Yes

注意: 在 Chrome, Safari 和 Opera 15+ 浏览器中使用 HTML DOM 语法的 onfocusin 事件可能无法正常工作。但是,他作为一个 HTML 元素,通过使用 addEventListener() 方法可以正常工作。


语法

HTML 中:

<element onfocusout="myScript">尝试一下

JavaScript (Chrome, Safari 和 Opera 15+ 可能无法正常工作) 中:

object.onfocusout=function(){myScript};尝试一下

JavaScript 中, 使用 addEventListener() 方法:

object.addEventListener("focusout", myScript);尝试一下

注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。


技术细节

是否支持冒泡:Yes
是否可以取消:No
事件类型:FocusEvent
支持的 HTML 标签:所有 HTML 元素,除了: <base>, <bdo>, <br>, <head>, <html>, <iframe>, <meta>, <param>, <script>, <style>, 和 <title>


实例

更多实例

实例

使用 "onfocusin" 和 "onfocusout" 事件:

<input type="text" onfocusin="focusFunction()" onfocusout="blurFunction()">

尝试一下 »

实例

事件委托:设置 addEventListener() 的 useCapture 参数为 true (用于获取焦点和失去焦点):

<form id="myForm">
  <input type="text" id="myInput">
</form>

<script>
var x = document.getElementById("myForm");
x.addEventListener("focus", myFocusFunction, true);
x.addEventListener("blur", myBlurFunction, true);

function myFocusFunction() {
    document.getElementById("myInput").style.backgroundColor = "yellow";
}

function myBlurFunction() {
    document.getElementById("myInput").style.backgroundColor = "";
}
</script>

尝试一下 »

实例

事件委托:使用 focusout 事件 ( Firefox 浏览器不支持 ):

<form id="myForm">
  <input type="text" id="myInput">
</form>

<script>
var x = document.getElementById("myForm");
x.addEventListener("focusin", myFocusFunction);
x.addEventListener("focusout", myBlurFunction);

function myFocusFunction() {
    document.getElementById("myInput").style.backgroundColor = "yellow";
}

function myBlurFunction() {
    document.getElementById("myInput").style.backgroundColor = "";
}
</script>

尝试一下 »


事件对象参考手册 事件对象

温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

HTML DOM对象

HTML DOM 引用对象

HTML DOM Password 对象

HTML DOM Link 对象

HTML DOM Select 对象

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }