当 div 中的输入具有焦点时,即使鼠标移动,您也希望在 div 中的表单元素上保留边框进出 div。然而,jQuery的hover()方法会干扰focus()事件。
jQuery 1.6
使用 jQuery 1.6,您可以使用内置的 :focus 选择器确定输入焦点。只需使用:
$("..").is(":focus")
jQuery 1.5 及以下
Ben Alman 推荐的此任务方法如下:
jQuery.expr[':'].focus = function( elem ) { return elem === document.activeElement && ( elem.type || elem.href ); };
任何 jQuery 版本
如果您需要支持两个版本的 jQuery,您可以添加 :focus 选择器(如果缺少):
(function ( $ ) { var filters = $.expr[":"]; if ( !filters.focus ) { filters.focus = function( elem ) { return elem === document.activeElement && ( elem.type || elem.href ); }; } })( jQuery );
或者,您可以获得当前聚焦的元素为:
$(document.activeElement)
以上是如何在 jQuery 中检测输入焦点:悬停与焦点事件?的详细内容。更多信息请关注PHP中文网其他相关文章!