如何获得对JavaScript中当前关注的表单字段的引用?

时间:2020-03-06 14:54:11  来源:igfitidea点击:

我正在寻找一种跨浏览器的方法,我知道IE有一些功能(我已经忘记了什么),而在Mozilla中做到这一点的方式可能与我发现的focusNode有关,这似乎与获取文本选择有关。

对我而言,涉及jQuery或者其他常见JS库的方法很好。

谢谢!

解决方案

那好吧,所以使用jQuery。

没有当前可用的方法来问这个问题。我们需要在焦点事件发生时进行跟踪,因此,此示例(感谢Karl Rudd)在所有元素上都进行了跟踪。这是用于输入的,但是我们可以调整选择器以适合需求,甚至在整个DOM上也是如此。

var currentFocus = null; 
$(':input').focus( function() { 
    currentFocus = this; 
}).blur( function() { 

    currentFocus = null; 
});

查看jQuery的额外选择器插件,它包括一个满足我们需求的:focus选择器。如果我们没有其他选择,则可以只使用该选择器的实现。