jquery – tinymce 4:如何创建自己的文件管理器?

我正在尝试创建自己的文件浏览器,以便我可以从我的文件管理中选择图像并将其发送到tinymce的图像链接字段,但我无法在其他任何地方找到有关如何实现此目的的更多信息.

这是在插入/编辑图像上打开新弹出窗口的代码,

file_browser_callback: function(field_name,url,type,win) {

    //tinymce.activeEditor.windowManager.close();
    //console.log(field_name);

    tinymce.activeEditor.windowManager.open({
        title: 'Browse Image',file: "yourbrowser.PHP?field=" + field_name + "&url=" + url,width: 450,height: 305,resizable : "no",inline : "yes",close_prevIoUs : "no",buttons: [{
            text: 'Insert',classes: 'widget btn primary first abs-layout-item',disabled: true,onclick: 'close'
        },{
            text: 'Close',onclick: 'close',window : win,input : field_name
        }]
    });

    return false;
},

这就是我卡住的地方 – 如何从文件管理器中选择图像并将其发送到插入/编辑图像弹出窗口中的图像链接

下面是我到目前为止的整个代码,

$(document).ready(function(){

        $('.button').click(function(){

            // @reference: http://www.tinymce.com/wiki.PHP/api4:method.tinymce.remove#
            if(tinyMCE.editors.length > 0) {

                // Remove all editors bound to textareas
                //tinymce.remove('textarea');

                // Remove all editors
                tinymce.remove();
            }

            $('.content').load('full.html',function() {

                if(tinyMCE.editors.length == 0) {

                    tinymce.init({
                        //selector: "textarea",mode : "textareas",editor_selector : "mce-customised",editor_deselector : "not-editor",theme: "modern",plugins: [
                            "advlist autolink lists link image charmap print preview hr anchor pagebreak","searchreplace wordcount visualblocks visualchars code fullscreen","insertdatetime media nonbreaking save table contextmenu directionality","emoticons template paste textcolor"
                        ],toolbar1: "insertfile undo redo | styleselect | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image",toolbar2: "print preview media | forecolor backcolor emoticons",image_advtab: true,file_browser_callback: function(field_name,win) {

                            //tinymce.activeEditor.windowManager.close();
                            //console.log(field_name);

                            tinymce.activeEditor.windowManager.open({
                                title: 'Browse Image',buttons: [{
                                    text: 'Insert',onclick: 'close'
                                },{
                                    text: 'Close',input : field_name
                                }]
                            });

                            return false;
                        },// Specifying an Absolute Image Path
                        document_base_url : "http://localhost/test/2013/js/tinymce/tinymce_4.0.2/",relative_urls : false,remove_script_host : false,image_list: "image_list.PHP",link_list: "link_list.PHP"
                    });

                    $('.button-submit').submit_form();
                }

            });

            return false;
        });

    });

test site.

或者,你知道任何与tinymce一起工作的好文件mananger插件吗?

解决方法

也许你应该在这里找到有用的信息: Configuration:file_browser_callback
win.document.getElementById(field_name).value = 'my browser value';

在这里:tinymce forum

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...