Javascript $(document.activeElement)在Firefox中不起作用
我需要在我使用的网页上获取当前的活动元素 $(document.activeElement)[0].id $(document.activeElement)[0].id 这在Internet Explorer中工作正常,但在Firefox中它总是返回空字符串Javascript $(document.activeElement)在Firefox中不起作用,javascript,jquery,element,document,Javascript,Jquery,Element,Document,我需要在我使用的网页上获取当前的活动元素 $(document.activeElement)[0].id $(document.activeElement)[0].id 这在Internet Explorer中工作正常,但在Firefox中它总是返回空字符串“” 请告诉我如何在Firefox中获取活动元素的id 下面是一个简单的场景 我有两个div,分别是ID div1和div2,现在当用户单击它们时,我应该得到它的ID 这是我的标记 问题不在代码中。但是,div不能处于活动状态 事实上,用户无
“”
请告诉我如何在Firefox中获取活动元素的id
下面是一个简单的场景
我有两个div,分别是ID div1和div2,现在当用户单击它们时,我应该得到它的ID
这是我的标记
问题不在代码中。但是,
div
不能处于活动状态
事实上,用户无法交互的元素不能处于活动状态
对于这些元素,将返回
的id 为什么不使用事件的目标
:
$(document).ready(function () {
$(document).click(function (e) {
alert(e.target.id);
});
});
jsiddle示例发现就是这样,尽管它实际上并不需要
$()
和[0]
。如果返回的是”
,则activeElement
可能没有设置id
。计算该行时,具有焦点的元素是否是您期望的元素?你能详细说明并可能包括相关的标记吗?可能需要一个或多个示例?请使用console.log(document.activeElement)
调试您的应用程序,以查看它是否是您期望的元素。这几乎总是解决此类问题的第一步。请注意,document.activeElement并不总是可用的,如果没有选择,则活动元素是页面的或空的。在mac上,除文本输入元素外的任何其他元素都无法获得焦点,这可能会导致错误,因为您的脚本需要非空数组。我已用MarkupHank you更新了问题!这也起了作用。