TinyMCE汉化及本地上传图片功能实例详解


Posted in Javascript onMay 31, 2016

TinyMCE我就不多介绍了,这是下载地址:https://www.tinymce.com/download/

下载下来是英文版,要汉化也很简单。

首先去网上随便下载个汉化包,然后把汉化包解压后的langs文件夹里的zh_CN.js拷到你下载的TinyMCE的langs文件夹中就行。最后在 tinymce.init中加上”language: "zh_CN","(后面会贴出代码)

本地图片上传我用到了Jquery中的uploadify和UI,所以需要引用jquery.uploadify.min.js和jquery-ui.js

Jquery中uploadify有基于flash和基于HTML两个版本,后者是要$5。。。这个,,我还是用的基于flash的。

那么还需要添加swfobject.js引用。这些引用的下载就不贴了,网上很多很多。

基本介绍完了,下面直接看代码:

<style type="text/css">
.mceuploadify{
display:block;
} 
</style>
<link rel="stylesheet" href="@Url.Content("~/uploadify/uploadify.css")"/>
<script type="text/javascript" src="@Url.Content("~/Content/js/history.js")"></script>
<script type="text/javascript" src="@Url.Content("~/tinymce_4.3.12/tinymce/js/tinymce/tinymce.min.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-ui.js")"></script>
<script type="text/javascript" src="@Url.Content("~/uploadify/jquery.uploadify.min.js")"></script>
<script type="text/javascript" src="@Url.Content("~/uploadify/swfobject.js")"></script>
<script type="text/javascript">
$(document).ready(function () {
var tinymceEditor;
tinymce.init({
selector: "textarea#Content",
auto_focus: "Content",
language: "zh_CN",
theme: "modern",
plugins: [
"advlist autolink lists link image charmap preview",
"searchreplace visualblocks fullscreen",
"insertdatetime media table contextmenu paste",
"emoticons textcolor"
],
toolbar1: "undo redo | styleselect | fontselect | fontsizeselect | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent",
toolbar2: "fullscreen preview | forecolor backcolor emoticons | table | link image media | mybutton",
setup: function (editor) {
editor.addButton('mybutton', {
text: '上传图片',
icon: false,
onclick: function () {
tinymceEditor = editor;
$("#uploadofedit").dialog({
modal: false,
resizable: false,
width: 400,
height: 200,
dialogClass: "mceuploadify"
});
}
});
},
//TinyMCE 会将所有的 font 元素转换成 span 元素
convert_fonts_to_spans: true,
//换行符会被转换成 br 元素
convert_newlines_to_brs: false,
//在换行处 TinyMCE 会用 BR 元素而不是插入段落
force_br_newlines: false,
//当返回或进入 Mozilla/Firefox 时,这个选项可以打开/关闭段落的建立
force_p_newlines: false,
//这个选项控制是否将换行符从输出的 HTML 中去除。选项默认打开,因为许多服务端系统将换行转换成 <br />,因为文本是在无格式的 textarea 中输入的。使用这个选项可以让所有内容在同一行。
remove_linebreaks: false,
//不能把这个设置去掉,不然图片路径会出错
relative_urls: false,
//不允许拖动大小
resize: false,
font_formats: "宋体=宋体;黑体=黑体;仿宋=仿宋;楷体=楷体;隶书=隶书;幼圆=幼圆;Arial=arial,helvetica,sans-serif;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",
fontsize_formats: "8pt 10pt 12pt 14pt 18pt 24pt 36pt"
});
$("#tinymceuploadify").uploadify({
'swf': '/uploadify/uploadify.swf',
'buttonText': '上传本地图片',
'uploader': '/Home/Upload',
'auto': true,
'fileTypeExts': '*.gif; *.jpg; *.png',
'method': 'post',
'multi': false,
'onUploadSuccess': function (event, data, flag) {
var img = "<img src='../../../UploadImg/" + data + "'>";
tinymceEditor.insertContent(img);
setTimeout(function () {
$("#uploadofedit").dialog('close');
}, 1000);
},
'onUploadError': function () {
setTimeout(function () {
$("#uploadofedit").dialog('close');
}, 1000);
alert("上传失败");
}
});
});
</script> 
<div>
<form method="post" action="/Home/">
<textarea id="content" name="content" style="width: 100%; height: 600px;"></textarea>
<input type="submit" value="提交" />
</form>
</div>
<div id='uploadofedit' style="display: none;">
<input type='file' name='tinymceuploadify' id='tinymceuploadify' />
<label>只能上传单张10M以下的 png、jpg、gif 格式的图片</label>
</div>

说明:

$("#tinymceuploadify").uploadify({
'swf': '/uploadify/uploadify.swf',
'buttonText': '上传本地图片',
'uploader': '/Home/Upload',
'auto': true,
'fileTypeExts': '*.gif; *.jpg; *.png',
'method': 'post',
'multi': false,
'onUploadSuccess': function (event, data, flag) {
var img = "<img src='../../../UploadImg/" + data + "'>";
tinymceEditor.insertContent(img);
setTimeout(function () {
$("#uploadofedit").dialog('close');
}, 1000);
},
'onUploadError': function () {
setTimeout(function () {
$("#uploadofedit").dialog('close');
}, 1000);
alert("上传失败");
}
});

这段代码中的参数,如‘swf','uploader','fileTypeExts‘这几个重要的参数

得根据自己下载的jquery.uploadify.js的版本来确定。具体可以去看官方的说明文档。

以上所述是小编给大家介绍的TinyMCE汉化及本地上传图片功能实例详解,希望对大家有所帮助,如果大家想了解更多内容敬请关注三水点靠木网站。

Javascript 相关文章推荐
JS 如果改变span标签的是否隐藏属性
Oct 06 Javascript
JS中把字符转成ASCII值的函数示例代码
Nov 21 Javascript
JavaScript中的6种运算符总结
Oct 16 Javascript
node.js中的fs.writeFileSync方法使用说明
Dec 14 Javascript
举例说明如何为JavaScript的方法参数设置默认值
Nov 17 Javascript
javascript运算符——逻辑运算符全面解析
Jun 27 Javascript
AngularJS教程之环境设置
Aug 16 Javascript
seajs学习之模块的依赖加载及模块API的导出
Oct 20 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
Nov 25 Javascript
JS实现排行榜文字向上滚动轮播效果
Nov 26 Javascript
JavaScript实现PC端横向轮播图
Feb 07 Javascript
JavaScript中作用域链的概念及用途讲解
Aug 06 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
May 31 #Javascript
BootStrap创建响应式导航条实例代码
May 31 #Javascript
浅谈js中的延迟执行和定时执行
May 31 #Javascript
温习Javascript基础语法之词法结构
May 31 #Javascript
jQuery文字横向滚动效果的实现代码
May 31 #Javascript
Javascript实现跑马灯效果的简单实例
May 31 #Javascript
javascript实现简易计算器的代码
May 31 #Javascript
You might like
针对初学PHP者的疑难问答(2)
2006/10/09 PHP
深入Apache与Nginx的优缺点比较详解
2013/06/17 PHP
jQuery学习笔记之jQuery的DOM操作
2010/12/22 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
2016/08/11 Javascript
js完整倒计时代码分享
2016/09/18 Javascript
VUE axios上传图片到七牛的实例代码
2017/07/28 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
2017/11/22 Javascript
d3.js实现自定义多y轴折线图的示例代码
2018/05/30 Javascript
ndm:NPM的桌面GUI应用程序
2018/10/15 Javascript
原生js实现瀑布流效果
2020/03/09 Javascript
vue各种事件监听实例(小结)
2020/06/24 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
2020/11/06 Javascript
Python生成验证码实例
2014/08/21 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
2018/11/07 Python
Django中的forms组件实例详解
2018/11/08 Python
Djang的model创建的字段和参数详解
2019/07/27 Python
详解Python3 pickle模块用法
2019/09/16 Python
使用python快速在局域网内搭建http传输文件服务的方法
2019/11/14 Python
Python简单实现区域生长方式
2020/01/16 Python
css3 border-image使用说明
2010/06/23 HTML / CSS
HTML5 Canvas绘制文本及图片的基础教程
2016/03/14 HTML / CSS
Clarria化妆品官方网站:购买天然和有机化妆品系列
2018/04/08 全球购物
优衣库台湾官网:UNIQLO台湾
2019/02/01 全球购物
一套Delphi的笔试题二
2013/05/11 面试题
宗教学大学生职业生涯规划范文
2014/02/08 职场文书
事业单位鉴定材料
2014/05/25 职场文书
体育专业求职信
2014/07/16 职场文书
2014机关党员干部“正风肃纪”思想汇报
2014/09/15 职场文书
安全隐患整改报告
2014/11/06 职场文书
先进个人事迹材料
2014/12/29 职场文书
小班上学期个人总结
2015/02/12 职场文书
给朋友的赠语
2015/06/23 职场文书
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python