tinymce是一款挺不错的html文本编辑器。但是添加图片是直接添加链接,不能直接选择本地图片。

下面我写了一个插件用于直接上传本地图片。

在tinymce的plugins目录下新建一个uploadimage目录,用于存放我新写的上传本地图片的插件。

下面看看plugin.js文件的具体内容。

/**
* tinymce plugin
* Created by jerry on 16/8/5.
*/
tinymce.PluginManager.add('uploadimage', function (editor) { function selectLocalImages() {
var dom = editor.dom;
var input_f = $('<input type="file" name="thumbnail" accept="image/jpg,image/jpeg,image/png,image/gif" multiple="multiple">');
input_f.on('change', function () {
var form = $("<form/>",
{
action: editor.settings.upload_image_url, //设置上传图片的路由,配置在初始化时
style: 'display:none',
method: 'post',
enctype: 'multipart/form-data'
}
);
form.append(input_f);
//ajax提交表单
form.ajaxSubmit({
beforeSubmit: function () {
return true;
},
success: function (data) {
if (data && data.file_path) {
editor.focus();
data.file_path.forEach(function (src) {
editor.selection.setContent(dom.createHTML('img', {src: src}));
})
}
}
});
}); input_f.click();
} editor.addCommand("mceUploadImageEditor", selectLocalImages); editor.addButton('uploadimage', {
icon: 'image',
tooltip: '上传图片',
onclick: selectLocalImages
}); editor.addMenuItem('uploadimage', {
icon: 'image',
text: '上传图片',
context: 'tools',
onclick: selectLocalImages
});
});

下面是组件初始化js代码:

tinymce.init({
selector: "textarea[data-provide='tinymce']",
upload_image_url: '/upload/cloud', //配置的上传图片的路由
height: 400,
plugins: [
'advlist autolink autosave lists link image charmap print preview anchor',
'searchreplace visualblocks code fullscreen textcolor colorpicker textpattern code uploadimage',
'contextmenu paste'
],
toolbar1: "undo redo | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | fontselect fontsizeselect ",
toolbar2: "forecolor backcolor | bullist numlist | outdent indent | removeformat | link unlink uploadimage | preview fullscreen ",
menubar: false,
//statusbar : false,
content_css: [
'/style/tinymce.css'
]
//参考网站 https://www.tinymce.com/
});

现在运行编辑器菜单如下:

点击图片小图标就可以从本地选择图片上传了。

  

tinymce4.x 上传本地图片(自己写个插件)的更多相关文章

  1. tinymce4.x 上传本地图片 (转载)

    转载自:http://www.cnblogs.com/fhen/p/5809514.html tinymce4.x 上传本地图片   tinymce是一款挺不错的html文本编辑器.但是添加图片是直接 ...

  2. KindEditor上传本地图片在ASP.NET MVC的配置

    http://www.cnblogs.com/upupto/archive/2010/08/24/1807202.html 本文解决KindEditor上传本地图片在ASP.NET MVC中的配置. ...

  3. .net mvc4 利用 kindeditor 上传本地图片

    http://blog.csdn.net/ycwol/article/details/41824371?utm_source=tuicool&utm_medium=referral 最近在用k ...

  4. 个人永久性免费-Excel催化剂功能第102波-批量上传本地图片至网络图床(外网可访问)

    自我突破,在100+功能后,再做有质量的功能,非常不易,相对录制视频这些轻松活,还是按捺不住去写代码,此功能虽小,但功课也做了不少,希望对真正有需要的群体带来一些惊喜. 背景介绍 图床的使用,一般是写 ...

  5. 有道云笔记Markdown上传本地图片的方法

    有道云笔记截图&保存   方法有多种,例如:开通有道云笔记VIP会员.先将图片文件上传到有道云笔记后使用图片的分享链接.说到底还是使用的 Markdown 的图片功能 ![图片名称](图片链接 ...

  6. html5上传本地图片,在线预览及裁剪(filereader,canvas)

    1 我们常常需要上传头像,点击上传按钮时候需要预览一下,使用filereader方法无需和后台交互,代码如下: //本地图片在上传之前的预览效果 //图片上传预览 function previewIm ...

  7. js上传本地图片遇到的问题

    1.改变页面文件上传默认的样式 <input type="text" size="20" id="upfile" style=&quo ...

  8. kindeditor上传本地图片实例

    所需插件:kindeditor下载   密码: 5ry4 jsp文件: <script type="text/javascript" language="javas ...

  9. 图片上传-本地图片转base64+ie8支持+本地预览支持

    最近项目由于flash同学没在了,图片上传只能前端重新做,后台希望用base64数据上传,复用之前接口 问题来了, 1.ie8 不支持canvas转base64 2.本地预览 base64数据,ie8 ...

随机推荐

  1. (转)Python3入门之线程threading常用方法

    原文:https://www.cnblogs.com/chengd/articles/7770898.html https://blog.csdn.net/sunhuaqiang1/article/d ...

  2. JavaScript -- Table

    -----048-Table.html----- <!DOCTYPE html> <html> <head> <meta http-equiv="c ...

  3. postgresql的启停和创建

    一.启停方法 两种方法 1.直接运行postgres进程启动: 2.使用pg_ctl命令启动 postgres -D /home/osdba/pgdata  & 二.停止数据库的三种模式 sm ...

  4. elasticSearch6源码分析(5)gateway模块

    1.gateway概述 The local gateway module stores the cluster state and shard data across full cluster res ...

  5. java设计模式--Builder模式

    一.Builder模式 二.使用例子 三.Spring中的Builder模式 Builder模式,构建者.构造者模式,在<图解设计模式>中归为 生成实例 一栏,该模式用于组装具有复杂结构的 ...

  6. Spring读取配置文件 @Value

    最近在学习Spring如何读取配置文件,记录下方便自己也方便别人: 大致分为两类吧,一种的思路是利用Spring的beanFactoryPostProcessor读取配置文件内容到内存中,也就是应用程 ...

  7. POJ 2234 Matches Game (尼姆博弈)

    题目链接: https://cn.vjudge.net/problem/POJ-2234 题目描述: Here is a simple game. In this game, there are se ...

  8. 并发编程 —— Java 内存模型总结图

    关于 Java 内存模型的类似思维导图. 如有错误,还请指正.

  9. windows下使用python操作redis(Visual Studio Code)

    1.编辑工具: Visual Studio Code(windows环境) 2.redis服务器:这里用了远程连接,需要配置redis.conf. (1)注释 #bind 127.0.0.1 (2)设 ...

  10. Git(二)_基本命令

    0. 开始查看所有配置:git config --listgit config --global user.name "runoob"git config --global use ...