• 富文本编辑器CKeditor的配置和图片上传,看完不后悔


    CKeditor是一款富文本编辑器,本文将用极为简单的方式介绍一下它的使用和困扰大家很久的图片上传问题,要有耐心。

    第一步:如何使用

    1.官网下载https://ckeditor.com/ckeditor...,分别是简易版、标准版、全面版、自定义四个选项,下载哪个根据你的诉求来。

    2.下载成功后---->解压得到一个ckeditor文件夹----->把ckeditor文件夹上传到服务器上(或本地的静态服务上)------>本地新建一个demo.htm如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    </head>
    <body>
    <textarea name="editor1" id="editor1" class="ckeditor" rows="10" cols="80"></textarea>
    <script src="http://自己的服务器地址/ckeditor/ckeditor.js"></script>
    </body>
    </html>

    3.运行demo.html就能看见编辑器了 获取编辑器数据用 var data = CKEDITOR.instances.editor1.getData()

    第二步:如何通过编辑器上传图片到服务器

    1.找到ckeditor/config.js,原来乱七八糟的全删了,修改如下

    CKEDITOR.editorConfig = function( config )
    {
    config.filebrowserImageUploadUrl = '/void/imgupload/ckeditorUpload?type=image';
    };

    2.解释一下,这个'/void/imgupload/ckeditorUpload'是自己定义的本地接收图片的接口,你需要写接收保存图片的逻辑

    3.重点!!这个接口接受保存完图片怎么反馈呢??答案是:新版本的ckeditor要返回json格式如下:

    {
    "uploaded": 1,   //写死的
    "fileName": filename,  //图片名
    "url": url  //上传服务器的图片的url
    }

    旧版本要返回js代码!!!如下:

    callback = request.args.get("CKEditorFuncNum")
    resData = "<script type="text/javascript">"
    resData += "window.parent.CKEDITOR.tools.callFunction(" + callback + ",'" + url + "',''" + ")" 
    resData += "</script>"
    return resData

    解释:url是上传服务器的图片的url callback是要接收get参数,参数名是“CKEditorFuncNum” ,callback一定不能缺

    补充:ckeditor新版旧版怎么区分呢?旧版在请求的时候url有'CKEditorFuncNum'参数,新版则没有(本人见解,不明白留言解答)

    ==========================================================

  • 相关阅读:
    八皇后问题--------------------递归回溯
    排序算法06------------------------插入排序
    无重复字符最长子串----------------滑动窗口法
    排序算法05------------------------堆排序(图解)
    排序算法04------------------------归并排序
    图形学基础(一)光栅图形学_下:剪裁
    计网Top-Down 抄书笔记(二)——应用层
    图形学基础(二)图形变换_下:3D 平行投影
    图形学基础(二)图形变换_上:2D 基本变换/复合变换
    图形学基础(一)光栅图形学_上:画直线/圆、区域填充
  • 原文地址:https://www.cnblogs.com/10manongit/p/12774989.html
Copyright © 2020-2023  润新知