tinymce vue拓展多图上传 实现拖拽切换位置,图片排序
创始人
2025-01-08 20:03:39
0

实现功能:基于tinymce TinyMCE中文文档中文手册   拖拽图片排序,去掉全部上传按钮,点击保存上传图片并关闭弹窗,优化了一些交互提示

声明:本人不是做vue前端的,可能有些更好的方法实现拖拽或者其他一些开源库实现。

代码plugin.js:

tinymce.PluginManager.add('axupimgs', function(editor, url) { 	var pluginName='Ax多图片上传'; 	window.axupimgs={}; //扔外部公共变量,也可以扔一个自定义的位置  	var baseURL=tinymce.baseURL; 	// var iframe1 = baseURL+'/plugins/axupimgs/upfiles.html'; 	var iframe1 = location.origin+'/tinymce/axupimgs/upfiles_new.html';     axupimgs.images_upload_handler = editor.getParam('images_upload_handler', undefined, 'function');     axupimgs.images_upload_base_path = editor.getParam('images_upload_base_path', '', 'string');     axupimgs.axupimgs_filetype = editor.getParam('axupimgs_filetype', '.png,.gif,.jpg,.jpeg', 'string'); 	axupimgs.res=[]; 	var openDialog = function() { 		isAddEventListener(true) 		return editor.windowManager.openUrl({ 			title: pluginName, 			size: 'large', 			url:iframe1, 			buttons: [ 				{ 					type: 'custom', 					text: 'Close', 					name: 'close', 				}, 				{ 					type: 'custom', 					text: 'Save', 					name: 'save', 					primary: true 				}, 			], 			onAction: function (api, details) { 				switch (details.name) { 					case 'save': 						//发送给upfiles,上传图片 						window.postMessage({ action: 'upLoadPictureFile' }, '*'); 						break; 					case 'close': 						window.postMessage({ action: 'closeUpLoadPictureFile' }, '*'); 						isAddEventListener(false) 						break; 					default: 						break; 				} 			}, 		}); 	};  	//保存 	function save() { 		// 链接插入富文本显示 		var html = ''; 		var imgs = axupimgs.res; 		var len = imgs.length; 		for (let i = 0; i < len; i++) { 			if (imgs[i].url) { 				html += ''; 			} 		} 		editor.insertContent(html); 		axupimgs.res = []; 		tinymce.activeEditor.windowManager.close() 	};  	//处理消息 	function handleMessage(event){ 		var data = event.data; 		if (data.action === 'savePictureFile') { 			save(); 			isAddEventListener(false) 		} 	}  	//添加监听 	function isAddEventListener(isAdd){ 		if(isAdd){ 			// 接收来自 iframe1 的消息 			window.addEventListener('message', handleMessage, false) 		}else{ 			window.removeEventListener('message',handleMessage, false) 		} 	}  	editor.ui.registry.getAll().icons.axupimgs || editor.ui.registry.addIcon('axupimgs','');  	editor.ui.registry.addButton('axupimgs', { 		icon: 'axupimgs',         tooltip: pluginName, 		onAction: function() { 			openDialog(); 		} 	}); 	editor.ui.registry.addMenuItem('axupimgs', { 		icon: 'axupimgs', 		text: '图片批量上传...', 		onAction: function() { 			openDialog(); 		} 	}); 	return { 		getMetadata: function() { 			return  { 				name: pluginName, 				url: "http://tinymce.ax-z.cn/more-plugins/axupimgs.php", 			}; 		} 	}; });  

htmlupfiles_new.html

             axupimgs                                       

    相关内容

    热门资讯

    绝活儿透视挂!中至余干可以装挂... 绝活儿透视挂!中至余干可以装挂(辅助)其实真的是有辅助脚本(哔哩哔哩)1)中至余干可以装挂辅助插件:...
    两分钟外挂透视!we-poke... 两分钟外挂透视!we-poker软件,wepoker私人定制透视(真实有挂)-哔哩哔哩暗藏猫腻,小编...
    秘籍透视挂!菠萝辅助器1.3(... 秘籍透视挂!菠萝辅助器1.3(辅助)总是是真的有辅助工具(哔哩哔哩)1、菠萝辅助器1.3辅助软件下载...
    9分钟外挂透视!wepoker... 9分钟外挂透视!wepoker怎么拿到好牌,德扑之心免费透视(真是有挂)-哔哩哔哩1、上手简单,内置...
    经验透视挂!点星休闲辅助器下载... 经验透视挂!点星休闲辅助器下载(辅助)一直真的是有辅助攻略(哔哩哔哩)1、打开软件启动之后找到中间准...
    第八分钟外挂透视!wpk俱乐部... 第八分钟外挂透视!wpk俱乐部怎么透视挂,aapoker插件(了解有挂)-哔哩哔哩wpk俱乐部怎么透...
    学习透视挂!哈糖大菠萝提高胜率... 学习透视挂!哈糖大菠萝提高胜率(辅助)原来一直总是有辅助工具(哔哩哔哩)哈糖大菠萝提高胜率是不是有人...
    9分钟外挂透视!wepoker... 9分钟外挂透视!wepoker智能辅助插件,wepoker智能辅助插件(有人有挂)-哔哩哔哩在进入w...
    第4分钟外挂透视!德普之星透视... 第4分钟外挂透视!德普之星透视辅助软件激活码,wepoker到底有没有透视(有挂神器)-哔哩哔哩1、...
    妙计透视挂!禅游指尖四川修改器... 妙计透视挂!禅游指尖四川修改器(辅助)原来是真的有辅助技巧(哔哩哔哩)1、许多玩家不知道禅游指尖四川...