thinkadmin的CKEDITOR扩展多图上传

!(function () {

    // 定义编辑器标准配置
    CKEDITOR.editorConfig = function (config) {
        config.language = 'zh-cn';
        config.toolbar = [
            {name: 'document', items: ['Source']},
            {name: 'styles', items: ['Font', 'FontSize']},
            {name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'RemoveFormat', 'TextColor', 'BGColor', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', 'NumberedList', 'BulletedList']},
            {name: 'uimage', items: ['Link', 'Unlink', 'Table', 'UploadImage','UploadMultiImage','UploadVideo']},
            {name: 'tools', items: ['Maximize']}
        ];
        config.allowedContent = true;
        config.extraPlugins = 'uimage,txvideo,multiimage';
        config.format_tags = 'p;h1;h2;h3;pre';
        config.removeButtons = 'Underline,Subscript,Superscript';
        config.removeDialogTabs = 'image:advanced;link:advanced';
        config.font_names = '宋体/SimSun;新宋体/NSimSun;仿宋/FangSong;楷体/KaiTi;黑体/SimHei;微软雅黑/Microsoft YaHei;' + config.font_names;
    };

    // 自定义图片上传插件
    CKEDITOR.plugins.add("uimage", {
        init: function (editor) {
            editor.ui.addButton("UploadImage", {label: "上传本地图片", command: 'uimage', icon: 'image', toolbar: 'insert,10'});
            editor.addCommand('uimage', {
                exec: function (editor) {
                    var field = '_editor_upload_' + Math.floor(Math.random() * 100000);
                    var url = window.ROOT_URL + '/index.php/admin/plugs/upfile.html?mode=one&type=png,jpg,gif,jpeg&field=' + field;
                    $('<input type="hidden">').attr('name', field).appendTo(editor.element.$).on('change', function () {
                        var element = CKEDITOR.dom.element.createFromHtml('<img src="' + this.value + '" border="0" title="image" />');
                        editor.insertElement(element), $(this).remove();
                    });
                    $.form.iframe(url, '插入图片');
                }
            });
        }
    });

    // 自定义多图上传插件
    CKEDITOR.plugins.add("multiimage", {
        init: function (editor) {
            editor.ui.addButton("UploadMultiImage", {label: "批量上传本地图片", command: 'umultiimage', icon: 'image', toolbar: 'insert,10'});
            editor.addCommand('umultiimage', {
                exec: function (editor) {
                    var field = '_editor_upload_' + Math.floor(Math.random() * 100000);
                    var url = window.ROOT_URL + '/index.php/admin/plugs/upfile.html?mode=mtl&type=png,jpg,gif,jpeg&field=' + field;
                    $('<input type="hidden">').attr('name', field).appendTo(editor.element.$).on('change', function () {
                        var imgList = this.value.split('|');
                        imgList.map(function (img) {
                            var element = CKEDITOR.dom.element.createFromHtml('<img src="' + img + '" border="0" title="image" />');
                            editor.insertElement(element);
                        })
                        $(this).remove();
                    });
                    $.form.iframe(url, '插入图片');
                }
            });
        }
    });

    // 自定义视频插入插件
    CKEDITOR.plugins.add('txvideo', {
        init: function (editor) {
            editor.ui.addButton("UploadVideo", {label: "插入HTML代码", command: 'uvideo', icon: 'flash', toolbar: 'insert,10'});
            editor.addCommand('uvideo', {
                exec: function (editor) {
                    layer.prompt({title: '插入HTML代码', formType: 2, area: ['600px', '300px']}, function (html, index) {
                        layer.close(index);
                        var element = CKEDITOR.dom.element.createFromHtml('<div style="text-align:center;">' + html + '</div>');
                        editor.insertElement(element);
                    });
                }
            });
        }
    });

})(); 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值