推荐一款国产开源的编辑器KindEditor

 KindEditor 是什么?
KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上得到所见即所得编辑效果,开发人员能够用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,能够无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。

主要特色:
php

  • 快速:体积小,加载速度快
  • 开源:开放源代码,高水平,高品质
  • 底层:内置自定义 DOM 类库,精确操做 DOM
  • 扩展:基于插件的设计,全部功能都是插件,可根据需求增减功能
  • 风格:修改编辑器风格很是容易,只需修改一个 CSS 文件
  • 兼容:支持大部分主流浏览器,好比 IE、Firefox、Safari、Chrome、Opera

使用方法:

1. 下载编辑器

下载 KindEditor 最新版本,下载以后打开 examples/index.html 就能够看到演示。css

下载页面: http://www.kindsoft.net/down.phphtml

 

2. 部署编辑器

解压 kindeditor-x.x.x.zip 文件,将全部文件上传到您的网站程序目录里,例如:http://您的域名/editor/浏览器

Note服务器

您能够根据需求删除如下目录后上传到服务器。asp.net

  • asp - ASP程序
  • asp.net - ASP.NET程序
  • php - PHP程序
  • jsp - JSP程序
  • examples - 演示文件

3. 修改HTML页面

  1. 在须要显示编辑器的位置添加textarea输入框。
<textarea id="editor_id" name="content" style="width:700px;height:300px;">
&lt;strong&gt;HTML内容&lt;/strong&gt;
</textarea>

Notejsp

  • id在当前页面必须是惟一的值。
  • 在textarea里设置HTML内容便可实现编辑,在这里须要注意的是,若是从服务器端程序(ASP、PHP、ASP.NET等)直接显示内容,则必须转换HTML特殊字符(>,<,&,”)。具体请参考各语言目录下面的demo.xxx程序,目前支持ASP、ASP.NET、PHP、JSP。
  • 在有些浏览器上不设宽度和高度可能显示有问题,因此最好设一下宽度和高度。宽度和高度可用inline样式设置,也可用 编辑器初始化参数 设置。
  1. 在该HTML页面添加如下脚本。
<script charset="utf-8" src="/editor/kindeditor.js"></script>
<script charset="utf-8" src="/editor/lang/zh_CN.js"></script>
<script>
        var editor;
        KindEditor.ready(function(K) {
                editor = K.create('#editor_id');
        });
</script>

Note编辑器

  • 第一个参数可用其它CSS选择器,匹配多个textarea时只在第一个元素上加载编辑器。
  • 经过K.create函数的第二个参数,能够对编辑器进行配置,具体参数请参考 编辑器初始化参数 。
var options = {
        cssPath : '/css/index.css',
        filterMode : true
};
var editor = K.create('textarea[name="content"]', options);

4. 获取HTML数据

// 取得HTML内容
html = editor.html();

// 同步数据后能够直接取得textarea的value
editor.sync();
html = document.getElementById('editor_id').value; // 原生API
html = K('#editor_id').val(); // KindEditor Node API
html = $('#editor_id').val(); // jQuery

// 设置HTML内容
editor.html('HTML内容');

Noteide

  • KindEditor的可视化操做在新建立的iframe上执行,代码模式下的textarea框也是新建立的,因此最后提交前须要将HTML数据同步到原来的textarea,editor.sync()函数会完成这个动做。
  • KindEditor在默认状况下自动寻找textarea所属的form元素,找到form后onsubmit事件里添加sync函数,因此用form方式提交数据,不须要手动执行sync()函数。
相关文章
相关标签/搜索