【问题标题】:Why does contenteditable div insert a "." before the first   tag for multiple spaces?为什么 contenteditable div 插入一个“。”在多个空格的第一个标签之前?
【发布时间】:2018-11-01 17:38:51
【问题描述】:

我有一个可内容编辑的 div,如果我输入多个空格,则会显示一个句号(句点)。

举个例子,我输入“test”,后跟两个空格,我最终在 DOM 中得到了这个:

<div contenteditable="true">test .&nbsp;</div>

如何为多个空格保留空白而不是“。”在第一个 &amp;nbsp;? 之前插入?

更新:

我看到如果我慢慢输入空格,那么就没有'。'被添加了,所以一定是基于时间的原因与 contenteditable 在引擎盖下的工作方式有关吗?

【问题讨论】:

    标签: html contenteditable


    【解决方案1】:

    我不明白这种行为。在this fiddle 中快速键入两个空格并不会显示句点。在我看来,这听起来像是操作系统功能或浏览器扩展。如果您在移动设备上进行测试,则有几个移动键盘会以这种方式运行,输入两个空格以获得句点和空格。尝试使用不同的用户代理或设备,您会看到它是否已本地化。

    <div contenteditable="true">type two spaces</div>
    

    【讨论】:

    • 如果我在您输入的字符串之后立即键入两个空格,我会得到该行为,在 Chrome 和 Safari 中都进行了测试
    • 不,在 Macbook Pro 上
    • @mindparse 那么它一定是你的操作系统。转到“系统偏好设置”>“键盘”,然后选择“文本”选项卡并取消选中双空格后带有句点的复选框。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多