- jQuery 教程
- jQuery - 首页
- jQuery - 路线图
- jQuery - 概述
- jQuery - 基础
- jQuery - 语法
- jQuery - 选择器
- jQuery - 事件
- jQuery - 属性
- jQuery - AJAX
- jQuery DOM 操作
- jQuery - DOM
- jQuery - 添加元素
- jQuery - 删除元素
- jQuery - 替换元素
- jQuery CSS 操作
- jQuery - CSS 类
- jQuery - 尺寸
- jQuery - CSS 属性
- jQuery 效果
- jQuery - 效果
- jQuery - 动画
- jQuery - 链式操作
- jQuery - 回调函数
- jQuery 遍历
- jQuery - 遍历
- jQuery - 遍历祖先节点
- jQuery - 遍历子孙节点
- jQuery UI
- jQuery - 交互
- jQuery - 小部件
- jQuery - 主题
- jQuery 参考
- jQuery - 选择器
- jQuery - 事件
- jQuery - 效果
- jQuery - HTML/CSS
- jQuery - 遍历
- jQuery - 其他
- jQuery - 属性
- jQuery - 工具函数
- jQuery 插件
- jQuery - 插件
- jQuery - PagePiling.js
- jQuery - Flickerplate.js
- jQuery - Multiscroll.js
- jQuery - Slidebar.js
- jQuery - Rowgrid.js
- jQuery - Alertify.js
- jQuery - Progressbar.js
- jQuery - Slideshow.js
- jQuery - Drawsvg.js
- jQuery - Tagsort.js
- jQuery - LogosDistort.js
- jQuery - Filer.js
- jQuery - Whatsnearby.js
- jQuery - Checkout.js
- jQuery - Blockrain.js
- jQuery - Producttour.js
- jQuery - Megadropdown.js
- jQuery - Weather.js
- jQuery 有用资源
- jQuery - 问答
- jQuery - 快速指南
- jQuery - 有用资源
- jQuery - 讨论
jQuery focusin() 方法
jQuery 事件 focusin() 方法用于将事件处理程序绑定到 focusin 事件,该事件在元素或其内部任何元素获得焦点时发生。
此方法支持事件冒泡,它也可以检测父元素上的焦点事件。
语法
以下是 jQuery 事件 focusin() 方法的语法:
$(selector).focusin(function)
参数
此方法接受一个可选参数作为函数,如下所述:
- function − 一个可选函数,在 focusin 事件发生时执行。
返回值
此方法不返回值,而是将事件处理程序绑定到 focusin 事件。
示例 1
当“div”元素获得焦点时,更改其背景颜色:
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> <style> div{ width: 30%; padding: 10px; border: 1px solid red; } input{ width: 70%; } </style> </head> <body> <div> <p>Change the bachground color, when gains the focus.</p> <label for="">Name:</label> <input type="text"> </div> <script> $("div").focusin(function() { $(this).css({"background-color":"green", "color":"white"}); }); </script> </body> </html>
输出
上面的程序显示一个包含输入字段的 div 框,当用户单击输入字段时,div 元素的背景颜色会更改为蓝色:
当用户点击输入字段时:
示例 2
使用 focusin() 方法进行事件冒泡。
在下面的示例中,jQuery 事件 focusin() 方法用于事件冒泡:
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> </head> <style> div{ width: 200px; height: 100px; border: 2px solid black; text-align: center; align-items: center; justify-content: center; display: flex; } </style> <body> <p>Click on the input filed to perform the event bubbling.</p> <div id="parent"> <input type="text" id="child"> </div> <script> $('#parent').focusin(function(){ alert("Focused on the parent element or one of its children!") }); $("#child").focusin(function(){ alert("Child element gained focus"); }); </script> </body> </html>
输出
执行程序后,如果您聚焦于子输入元素,由于事件冒泡,两个 focusin() 事件处理程序都将被触发。首先,子元素的处理程序将运行,然后是父元素的处理程序,这是因为 DOM 中的事件传播:
如果用户单击输入字段(子元素):
单击“确定”按钮后,将执行父处理程序:
示例 3
无需可选 function 参数使用 focusin() 方法:
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> </head> <body> <input type="text" placeholder="Name"> <script> $('input').focusin().css({"background-color":"gray", "color":"white"}); </script> </body> </html>
输出
执行程序后,未获得焦点的输入字段显示为灰色背景:
jquery_ref_events.htm
广告