将CKEditor集成到elFinder中

时间:2013-05-24 10:22:02

标签: javascript jquery ckeditor elfinder

我确信之前我已经找到了相似的帖子,但不幸的是,在这种情况下,这对我有用。

基本上我所拥有的是页面上并排的elFinder和CKEditor。 我想要做的是在双击文件时或在从contextMenu单击编辑时将文件内容打开到CKEditor。

请有人可以告诉我如何实现这一目标。

谢谢

2 个答案:

答案 0 :(得分:1)

经过一些实验,我得出以下结论。它与code for integrating tinyMCE相同,但是"编辑"参数如下(我假设您正在使用jQuery adapter):

         editors: [{
              mimes: ['text/html'],
              load: function(textarea) {
                 $(textarea).ckeditor();
              },
              close: function(textarea, instance) {
                CKEDITOR.instances[textarea.id].destroy();
              },
              save: function(textarea, editor) {
                  textarea.value = $(textarea).val();
              }

            }
          ]

答案 1 :(得分:0)

这是elfinder forum

中给出的代码
CKEDITOR.on('dialogDefinition', function(event) {
    var editor = event.editor;
    var dialogDefinition = event.data.definition;
    var dialogName = event.data.name;

    var tabCount = dialogDefinition.contents.length;
    for(var i = 0; i < tabCount; i++) {
        var browseButton = dialogDefinition.contents[i].get('browse');

        if (browseButton !== null) {
            browseButton.hidden = false;
            browseButton.onClick = function(dialog, i) {

            $('<div \>').dialog({modal:true,width:"80%",title:'elFinder',zIndex: 99999,
            create: function(event, ui) {
            $(this).elfinder({
            resizable:false,
            //lang:'ru', // Optional
            url : /elfinder/php/connector.php?mode=image',
            getFileCallback : function(url) {
            if($('input#cke_118_textInput').is(':visible')){
                $('input#cke_118_textInput').val(url);
            } else {
                $('input#cke_79_textInput').val(url);
            }

            $('a.ui-dialog-titlebar-close[role="button"]').click()
            }
    }).elfinder('instance')
    }

             })  
            }
        }
    }
});