gpt4 book ai didi

webkit - 在Webkit下失去焦点之后,强制contenteditable div停止接受输入

转载 作者:行者123 更新时间:2023-12-04 10:04:55 25 4
gpt4 key购买 nike

在Chrome和Safari(可能还有其他基于Webkit的浏览器)中,即使在div失去焦点之后,仍然可以键入一个内容可编辑的div。

我构建了一个简单的示例来说明此问题:http://jsfiddle.net/yfcsU/3/

该示例包含两个元素:一个具有contenteditable="true"的div,以及一个链接,该链接在单击它时将在contenteditable div上触发模糊事件。

单击链接时,可内容编辑的div失去焦点,但是您仍然可以键入div,任何按键都会使其重新聚焦。

在Firefox中,此行为与预期的工作方式不同:单击链接将使contenteditable div停止接受输入。

在Webkit中,是否有一种方法可以使contenteditable div失去焦点后停止接受输入而不会在div上禁用contenteditable?

最佳答案

标记为正确的答案实际上是正确的,但是我将添加另一个可能更直接的解决方案。在contentEditable div上调用blur()之后,必须调用此命令:

window.getSelection().removeAllRanges();

在这里测试: http://jsfiddle.net/mareksuscak/oytdoxy8/

在我看来,它执行相同的工作,并解释了为什么它无法正常工作-通常在模糊时从输入元素中删除选择范围,但对于contentEditable div却无法执行,因此在输入任何字符/lib中断之后,它是再次集中。

关于webkit - 在Webkit下失去焦点之后,强制contenteditable div停止接受输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12353247/

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