当前位置: 首页 > 面试题库 >

JavaScript我如何找出哪个DOM元素具有焦点?

贺跃
2023-03-14
问题内容

我想用JavaScript找出当前关注的元素。我一直在浏览DOM,但尚未找到我需要的东西。有没有办法做到这一点,怎么做?

我寻找这个的原因:

我正在尝试制作箭头之类的键并enter浏览输入元素表。选项卡现在可以使用,但是可以输入,默认情况下,箭头没有显示。我已经设置了关键处理部分,但是现在我需要弄清楚如何在事件处理功能中转移焦点。


问题答案:

使用document.activeElement,所有主要浏览器均支持。

以前,如果您试图找出哪个表单域具有焦点,则无法。要在较旧的浏览器中模拟检测,请向所有字段添加“焦点”事件处理程序,并将最后关注的字段记录在变量中。添加一个“模糊”处理程序,以在发生模糊事件时清除最后关注的字段的变量。



 类似资料:
  • 问题内容: javascript中是否有办法确定哪个html页面元素具有焦点? 问题答案: 使用该属性。 Chrome 2 +,Firefox 3 +,IE4 +,Opera 9.6+和Safari 4+支持该属性。 请注意,此属性将仅包含接受键击的元素(例如,表单元素)。

  • 问题内容: 假设我将一个函数附加到HTML输入框,如下所示: 有没有一种方法可以获取导致事件触发的元素(在该元素中被单击)在该函数内部的ID ?怎么样? 例如,假设我的跨度是这样的: 如果在输入元素具有焦点之后立即单击范围,则输入元素将失去其焦点。函数如何知道它是被单击的? PS:如果跨度的onclick事件发生在输入元素的onblur事件之前,那么我的问题将得到解决,因为我可以设置一些状态值来指

  • 问题内容: 我有几个在我的。我想知道当前哪个重点。我如何找到此信息? 问题答案: (从继承)应该返回对具有焦点的组件的引用。可能也很有趣。

  • 假设我有以下div,它在满足某个条件后获得焦点: 我想创建一个处理程序,检查该div是否有焦点,当它的计算结果为true/focus在div上时,执行一些操作(在下面的示例中,打印一个控制台日志): 我在控制台中收到一条错误消息,该消息显示: TypeError:无法读取属性“Has Focus”为null 知道我做错了什么吗?也许就像我传递div ID的方式?

  • 问题内容: 有没有办法断言某个元素(例如输入或链接)具有键盘焦点?我在Selenium中使用Codeception。在http://codeception.com/docs/modules/WebDriver上找不到任何内容 问题答案: 一个可靠的消息来源告诉我这可行: 测试愉快!

  • 问题内容: 我正在尝试测试DOM元素是否存在,如果确实存在,则将其删除,如果不存在,则将其创建。 检查是否存在,创建元素有效,但删除该元素无效。基本上,所有这些代码所做的就是通过单击按钮将iframe注入网页。我想发生的是,如果iframe已经存在,可以删除它。但是由于某种原因,我失败了。 问题答案: 应该在父级上调用,即: 在您的示例中,您应该执行以下操作: