基本javascript所见即所得编辑器

基本javascript所见即所得编辑器,javascript,jquery,wysiwyg,Javascript,Jquery,Wysiwyg,我可以得到一个关于如何使用textarea制作所见即所得编辑器的解释吗?我需要它能做的就是解析基本的html标记,如粗体、斜体、下划线等。它不需要任何按钮来插入它,我只想在解析html的textarea标记内有一个默认文本 例如: <textarea cols="20" rows="20" name="ok"> <b>wat</b> </textarea> 沃特 这将在文本区域内打印出wat,而不是wat 编辑:首选jQuery文本区域无法解

我可以得到一个关于如何使用textarea制作所见即所得编辑器的解释吗?我需要它能做的就是解析基本的html标记,如粗体、斜体、下划线等。它不需要任何按钮来插入它,我只想在解析html的textarea标记内有一个默认文本

例如:

<textarea cols="20" rows="20" name="ok">
<b>wat</b>
</textarea>

沃特
这将在文本区域内打印出
wat
,而不是wat


编辑:首选jQuery

文本区域无法解析HTML--句点。(任何人都可以随时纠正我的错误)


您看到的所见即所得编辑器不在文本区域中,至少不在相同的方式中。我建议使用预先构建的编辑器,如TinyMCE或FCK编辑器。

文本区域不会解析HTML,但通过使用WYSIWYG插件,编辑器将替换文本区域,并让用户能够查看和修改内容。使用一些编辑器,例如TinyMCE,您可以将其设置为简单模式,并且只允许您感兴趣的基本格式设置(粗体、斜体、下划线、项目符号等)。这有助于避免编辑器被不必要的工具弄乱


我建议签出或查看
contenteditable
属性。许多现代浏览器都支持它。只需将它添加到一个元素并编辑掉

document.getElementById('something').contentEditable = true;
当然,它在文本区域不起作用。您需要用div替换textarea并使其可编辑。提交表单时,还需要确保textarea将div的内容(例如,
innerHTML
)作为其值


你看过tinymce或其他一百个javascript丰富的编辑器吗?你对使用它们有什么异议吗?我认为即使制作一个基本的所见即所得编辑器也不是那么简单。问题是带有样式外观的文本显示是HTML中的一个输出函数。但是您还需要输入端来创建编辑器。我建议你调查一个写得好,灵活的,比如YUI RTE。然后配置出你不想要的功能。我认为即使创建一个简单的编辑器也需要一些非常繁重的正则表达式。有趣的是,textareas可以排序为“unpasse”html。你放在它们里面的任何东西(当然除了
)都将被视为文本区域的文本内容,而不是html。这甚至包括cdata部分和html注释。