Contenteditable标签延续
介绍发生问题之前的情况:
当在包含html标签的contenteditable中输入文本时,如果您在标签的右侧,它将继续在标签内插入。 例如,如果我有这样的文字:
The <b>quick</b> fox jumped over the lazy dog.
它呈现像这样
快速 | 狐狸跳过那只懒惰的狗。
我的光标位于管道位置,紧跟在单词quick后面。 如果我输入棕色,我会得到
The <b>quick brown</b> fox jumped over the lazy dog.
快速的棕色 | 狐狸跳过那只懒惰的狗。
例如:http://jsfiddle.net/mBzvs/
我的问题是,如何删除其他标签(如span)的此标签延续功能? 我想保留<b>
标签,但我不希望这发生在<span>
标签中。
Chrome和其他WebKit浏览器将始终将插入符放在<b>
元素的末尾,而不是下一个文本节点的开头。 例如,查看此WebKit错误。 也是这一个。 Firefox给你更多的控制。
没有解决方案选项是好的。 查看链接的WebKit错误的一些建议。
在有些人找到更好的解决方案之前,我建议你将contenteditable="false"
为<b>
标签。
The <b contenteditable="false">quick</b> fox jumped over the lazy dog
以来:
<b>
标记中的内容不可编辑。 如果没有,当他开始在该标签中的最后一个字符旁边打字时,很难分辨出人们想要什么。 我想保留它为b标签,但我不希望这发生的span标签。
注意:您需要为IE添加额外的代码。 请参阅contenteditable = false内部contenteditable = true块在IE8中仍可编辑
链接地址: http://www.djcxy.com/p/18087.html