0

我如何知道哪个元素有焦点,或者如何确定某个元素是否有焦点?

4

2 回答 2

0

反正我不知道直接查询这种信息。我想你可以遍历 DOM 并手动检查它。如果是这种情况,你应该看看这个

当感兴趣的特定元素获得焦点时,也许您可​​以通过处理事件来实现您想要做的事情。这是在 jQuery 中执行此操作的方法。

$('<selector>').focus(function() {
  // Do something here
});

只是为了咯咯笑,这是一种可以使用 focus 方法来跟踪哪个元素最后收到它的方法。我强烈建议不要使用此代码。

var gotDaFocus;
$('*').focus(function() {
  gotDaFocus = this;
}); 
于 2011-04-08T13:35:40.413 回答
0

恐怕尚未实施。你可以做这样的事情

Shoes.app do
  @focused = para ""
  stack do
    @label1 = edit_line :text => 1
    click do
      @focused.replace @label1.text
    end
  end
  stack do
    @label2 = edit_line :text => 2
    click do
      @focused.replace @label2.text
    end
  end
end

但是 Windows 中的问题是控件窃取了 Shoes 中的所有事件。在绿鞋中它会起作用。如果您在 Windows 中,单击 edit_line 的右侧仍然可以看到结果。当然,这只是当你用鼠标点击时,你应该检查 keypress 来获取键盘事件。格茨

于 2011-12-04T21:18:37.093 回答