2010-01-09 105 views
1

我希望能在JavaScript中构建一个IDE,其行为与gmail非常相似,除了样式会根据键入的内容自动更改。这个逻辑不是我在挣扎的地方。它的gmail如何实现在HTML中以丰富的编辑格式进行编辑的能力。据我所知textarea控件不能这样工作,那么他们如何伪造这个功能呢?HTML Javascript富文本框(IDE)

回答

0

下载许多开放源代码系统之一,看看他们是如何做到的。
基本上,它们将事件处理程序附加到按钮上,该按钮反过来知道如何在光标当前位于文本区域中的位置插入“stuff”,或围绕textarea中的选定区域插入“stuff”。

+0

的“东西”是问题的目的。 – Dested 2010-01-09 17:28:04

+0

东西== html标签 – 2010-01-09 22:43:01

1

我不太确定这是你的意思,但你在寻找一个在线的所见即所得的编辑器?

在这种情况下,请允许我推荐CKEDitor,这是相当快速,现代和强大。

您可以在相应的Wikipedia entry中找到更广泛的列表。

您可能必须自定义任何编辑器才能编辑电子邮件(例如,您将无法使用任何预定义的CSS类,因此编辑器必须执行所有操作样式定义直接在标签中),但它不应该是一个问题。

0

我的投票是'editarea'这是在网络编辑器列表中:Another Wikipedia entry

我能够将它与最简单的代码添加到现有的页面:

<script language="javascript" type="text/javascript" src="edit_area/edit_area_full.js"></script> 
<script language="javascript" type="text/javascript" > 
editAreaLoader.init({ 
    id: "my_textarea_id" // ID of textarea to turn into syntax editor. 
    , syntax: "php" 
    , start_highlight: true 
    , allow_resize: "both" 
    , toolbar: "search, go_to_line, |, undo, redo, |, highlight, reset_highlight, word_wrap,|,syntax_selection" 
    , min_height:150 
    , min_width:400 
}); 
</script>