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 相关文章推荐
jQuery.position()方法获取不到值的安全替换方法
Mar 13 Javascript
jQuery实现无限往下滚动效果代码
Apr 16 Javascript
JavaScript实现图片轮播组件代码示例
Nov 22 Javascript
原生js实现图片放大缩小计时器效果
Jan 20 Javascript
从零学习node.js之利用express搭建简易论坛(七)
Feb 25 Javascript
Angular使用操作事件指令ng-click传多个参数示例
Mar 27 Javascript
JS实现点击拉拽轮播图pc端移动端适配
Sep 05 Javascript
详解js创建对象的几种方法及继承
Apr 12 Javascript
bootstrap table插件动态加载表头
Jul 19 Javascript
使用 js 简单的实现 bind、call 、aplly代码实例
Sep 07 Javascript
layui实现checkbox的目录树tree的例子
Sep 12 Javascript
简单了解前端渐进式框架VUE
Jul 20 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学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
PHP中遇到BOM、编码导致json_decode函数无法解析问题
2014/07/02 PHP
php自动提交表单的方法(基于fsockopen与curl)
2016/05/09 PHP
php post换行的方法
2020/02/03 PHP
php7 参数、整形及字符串处理机制修改实例分析
2020/05/25 PHP
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
js函数参数设置默认值的一种变通实现方法
2014/05/26 Javascript
jQuery实现鼠标滚轮动态改变样式或效果
2015/01/05 Javascript
angular.js之路由的选择方法
2016/09/24 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
vue2.x集成百度UEditor富文本编辑器的方法
2018/09/21 Javascript
jQuery实现网页拼图游戏
2020/04/22 jQuery
原生js实现随机点名功能
2019/11/05 Javascript
Element Collapse 折叠面板的使用方法
2020/07/26 Javascript
JS时间戳与日期格式互相转换的简单方法示例
2021/01/30 Javascript
Python对excel文档的操作方法详解
2018/12/10 Python
pytorch permute维度转换方法
2018/12/14 Python
selenium+python自动化测试之多窗口切换
2019/01/23 Python
Python字符串的常见操作实例小结
2019/04/08 Python
selenium+python自动化测试环境搭建步骤
2019/06/03 Python
python防止随意修改类属性的实现方法
2019/08/21 Python
python__name__原理及用法详解
2019/11/02 Python
python3定位并识别图片验证码实现自动登录功能
2021/01/29 Python
倩碧美国官网:Clinique美国
2016/07/20 全球购物
彪马香港官方网上商店:PUMA香港
2020/12/06 全球购物
平面设计自荐信
2013/10/07 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
工商干部先进事迹
2014/05/14 职场文书
2014年教师工作总结
2014/11/10 职场文书
综合素质评价自我评价
2015/03/06 职场文书
2015年会计人员工作总结
2015/05/22 职场文书
幼儿园2016圣诞节活动总结
2016/03/31 职场文书
前端vue+express实现文件的上传下载示例
2022/02/18 Vue.js