我可以在保持焦点的同时移动 DOMElement 吗?

Cod*_*rer 6 javascript dom focus

假设我有一个带有 , 的简单 HTML 页面textarea,并且我想将其包装textarea在 DIV 中。但是,这种情况并不总是发生在启动/页面加载时,因此用户可能会将焦点放在该区域,甚至正在打字。

我可以通过创建一个 DIV 来移动/包裹该区域,将其附加到 的textarea父级,然后将textarea其放入其中,效果很好。然而,当我这样做时,焦点就会被移除textarea,如果用户正在打字,他们会生气。

如何textarea在不中断用户的情况下移动 的 DOM 节点?这可能吗?

Jas*_*son 4

根据浏览器的不同,您也许可以使用 document.activeElement 确定哪个元素具有焦点。在执行移动之前保存该值,然后使用文本区域中的 .focus() 将焦点设置回与您保存的元素相同的元素。