浏览器兼容input的focusblur事件的事件委托实现

Posted 前端开发自留地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浏览器兼容input的focusblur事件的事件委托实现相关的知识,希望对你有一定的参考价值。

(如喜欢请点击上方公众号,可快速关注)

focus事件在元素获取焦点时触发. 这个事件和focusin最大的区别仅仅在于后者会事件冒泡。
当一个元素失去焦点的时候blur事件被触发。它和focusout事件的主要区别是focusout支持冒泡。
focusin、focusout正好支持事件冒泡,这样正好可以轻松实现兼容浏览器focus、blur事件的事件委托。

html

<form id="form"> <input type="text" placeholder="text input"> <input type="password" placeholder="password"></form>

javascript

const form = document.getElementById('form');
form.addEventListener('focusin', (event) => { event.target.style.background = 'pink'; });
form.addEventListener('focusout', (event) => { event.target.style.background = ''; });


以上是关于浏览器兼容input的focusblur事件的事件委托实现的主要内容,如果未能解决你的问题,请参考以下文章

实时监测input控件value值动态变化的事件

IOS系统兼容input keyup事件

input type为checkbox或radio时的click默认事件

IOS系统兼容input keyup事件

NO---22 H5在ios端微信浏览器中,input事件触发后页面不复位的问题

Jquery9 事件对象