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)德普之星私人局透视辅助挂:进一步探索德...
    透视模拟器!德普之星透视辅助插... 透视模拟器!德普之星透视辅助插件(透视)辅助软件(一直有挂)1、上手简单,内置详细流程视频教学,新手...
    透视真的!德普辅助器辅助器怎么... 透视真的!德普辅助器辅助器怎么用(透视)辅助软件(都是存在有挂)小薇(透视辅助)致您一封信;亲爱德普...
    透视ai代打!德普之星私人局辅... 透视ai代打!德普之星私人局辅助器(透视)辅助器app(确实存在有挂)1)德普之星私人局辅助器辅助挂...
    透视安卓版!德普之星的辅助工具... 透视安卓版!德普之星的辅助工具介绍(透视)免费透视(总是是真的有挂)1、玩家可以在德普之星的辅助工具...
    透视计算!德普之星透视辅助软件... 透视计算!德普之星透视辅助软件(透视)透视免费(真是真的有挂)1、很好的工具软件,可以解锁游戏的德普...
    透视透视!德普之星辅助软件(透... 透视透视!德普之星辅助软件(透视)透视辅助(其实真的是有挂)1、任何德普之星辅助软件ai辅助神器的玩...
    透视苹果版!德普之星的辅助工具... 透视苹果版!德普之星的辅助工具介绍(透视)透视免费(都是存在有挂)1、任何德普之星的辅助工具介绍ai...
    透视辅助!德普之星怎么设置埋牌... 透视辅助!德普之星怎么设置埋牌(透视)透视辅助软件下载(果然是有挂)1、许多玩家不知道德普之星怎么设...
    透视有挂!德扑圈透视(透视)a... 透视有挂!德扑圈透视(透视)app安卓版破解版(真是真的是有挂);1、超多福利:超高返利,海量正版游...