首页  >  问答  >  正文

JavaScript焦点清除的方法

<p>我知道这应该不难,但是我在谷歌上找不到答案。</p> <p>我想执行一段javascript代码,可以清除当前焦点所在的元素,而不需要提前知道焦点在哪个元素上。它必须能在Firefox 2以及更现代的浏览器上运行。</p> <p>有没有好的方法可以实现这个功能?</p>
P粉231112437P粉231112437400 天前381

全部回复(2)我来回复

  • P粉662614213

    P粉6626142132023-08-22 14:16:10

    .focus()然后在您的页面上选择其他任意元素.blur()。由于只能有一个元素拥有焦点,焦点会转移到该元素,然后被移除。

    回复
    0
  • P粉348088995

    P粉3480889952023-08-22 12:57:31

    答案: document.activeElement

    要实现你想要的效果,使用document.activeElement.blur()

    如果需要支持Firefox 2,还可以使用以下代码:

    function onElementFocused(e)
    {
        if (e && e.target)
            document.activeElement = e.target == document ? null : e.target;
    } 
    
    if (document.addEventListener) 
        document.addEventListener("focus", onElementFocused, true);

    回复
    0
  • 取消回复