gpt4 book ai didi

angular - 如何在 Angular 6 上获得事件元素(重点元素)?

转载 作者:行者123 更新时间:2023-12-03 13:34:28 25 4
gpt4 key购买 nike

-- 不重复!由于其他问题已过时。不与所问问题重复!!!!

this.elm.nativeElement.ownerDocument.activeElement


document.activeElement

奇怪地给了我整个 body 。我怎样才能得到当前的焦点元素?
  • elm = ElementRef 的类型,绑定(bind)在我的组件的构造函数中。
  • 从这里的另一个问题: this.renderer.invokeElementMethod 也不可调用,因为 Renderer 现在已弃用,并且 Renderer2 显然不再具有该方法。

  • 编辑:这个问题部分地回答了这个问题:

    document.activeelement returns body

    Between leaving the old element and entering the new element the active element is indeed the document/body itself.

    最佳答案

    我必须在超时内覆盖“document.activeElement”或“this.elm.nativeElement.ownerDocument.activeElement”,以便下一个 Angular 生命周期检查事件元素。否则,当焦点更改后立即执行“X.activeElement”时,您将获得整个正文,因为在输入新元素时,事件元素确实是文档/正文本身。

    setTimeout(function() {
    X = document.activeElement;
    });
    编辑 für ES6(也可以使用“this”):
    setTimeout(() => {
    X = document.activeElement;
    });

    关于angular - 如何在 Angular 6 上获得事件元素(重点元素)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52531250/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com