禁止HTML锚标记内的Caret

时间:2016-01-27 17:09:39

标签: javascript html5 contenteditable

我有一个contenteditable段落,其中包含多个锚标记,如下所示。每个锚标记包含带方括号的文本。假设管道是插入符号:

<p contenteditable='true'>This is some <a>[text]|</a>. Here is some <a>[more]</a></p>

用户输入密钥后,如何检测插入符号位于左侧的右方括号和右侧的结束锚标记之间,如果是,请将其移至关闭锚标记的右侧防止输入锚标记。

我已经浏览了大约六个帖子,包括这个帖子:contenteditable put caret outside inserted span

然而,它们都没有满足我的特殊需要。提前致谢。

1 个答案:

答案 0 :(得分:2)

将锚点设置为不可信,并且该人员将无法编辑其中的文本。 (但他们可以删除它)

&#13;
&#13;
<p contenteditable='true'>This is some <a contenteditable="false">[text]</a>. Here is some <a contenteditable="false">[more]</a></p>
&#13;
&#13;
&#13;

并允许他们只编辑

中的文字

&#13;
&#13;
<p contenteditable='true'>This is some <a contenteditable="false">[<span contenteditable='true'>text</span>]</a>. Here is some <a contenteditable="false">[<span contenteditable='true'>more</span>]</a></p>
&#13;
&#13;
&#13;