如何在文本区域中禁用文本,如



我正试图在文本区域内创建一个禁用/不可编辑的文本。我发现了一个技巧,让第一部分在这里不可编辑如何锁定文本区域的第一个单词?但我的问题是把它写在正文的末尾。但它甚至可能不是一个文本区域的"html标签",但它必须看起来像这样并且可以编辑。

我研究和阅读了很多,其他人说只要在外面写出来,告诉他们这篇文章会被附加。但是是的。这也是我的第一个想法。

有没有一个jQuery插件或更容易做到这一点的东西?

干杯!

在第一条评论后编辑:

我忘了提一下,我需要不可编辑的文本是不同的颜色,这样文本区域就不会切断它。

如果您使用HTML5 contenteditable属性,您可以实现类似的功能。

<div contenteditable>test <span contenteditable="false">asdf</span> asdf</div>​

您可以编辑不可编辑部分周围的文本,但无法编辑该范围内的文本。但是,您仍然可以通过退格键或选择/删除来删除它。

我在这里有点工作http://jsfiddle.net/index/tX44C/2/,已经在利用contenteditable attr做了很多工作。但它仍然存在一些缺陷,特别是在Safari中,当replaceWith触发时,它失去了焦点。而且,我不能在IE浏览器上测试它,我认为有些IE在"CSS内容"方面有问题。

还有更好的吗?

编辑:我对上面发布的链接做了一些更改(我也编辑了链接),现在看起来工作得很好。我对它很满意,所以除非出现其他解决方案,否则我现在将使用它。

澄清:fiddle上的代码还包括一个限制器和一些其他输入框,因为我正在查看contenteditable的内容。但为了使文本位于末尾,我使用了CSS :aftercontent属性,并在键入时进行了一些操作以删除br,使其保持在末尾。

干杯!

有一种感觉,这可能还不够,但我曾在修复用户生成的电子邮件的签名的情况下使用过它。这只是一些css技巧。

请参阅jsfiddle

最新更新