单击CKEditor中的链接按钮时,CKFinder将默认视图设置更改为列表

时间:2012-10-30 22:34:32

标签: ckeditor ckfinder

当我在CKEditor上点击链接时,我试图将defaultview设置为list。我已经使用CKEditor配置了CKFinder。所以现在当我点击CKEditor中的链接时,我看到一个浏览按钮和onclick的浏览按钮,它将我带到文件列表。但它在那里显示图像缩略图。我想将其显示为“列表”。我只有在单击CKEditor中的链接时才应该这样做。如果我点击图片,它应该显示缩略图。

以下是我创建CKEditor并将其与CKFinder关联的方式。

function createCkEditor(textAreaId, width, height) {
    var editor = CKEDITOR.replace( textAreaId,
        {
            customConfig : 'suConfig.js',
            width : width,
            height : height
        });

    CKFinder.setupCKEditor( editor, { basePath : '/CKFinderJava/ckfinder/', id:'123', startupPath : varStartupDir, startupFolderExpanded : true, rememberLastFolder : false} ) ;
}

CKEDITOR.on( 'dialogDefinition', function( ev ) {
    // Take the dialog name and its definition from the event data.
    var dialogName = ev.data.name;
    var dialogDefinition = ev.data.definition;

    // If "Link" dialog
    if ( dialogName == 'link' ) {
        alert('link dialog clicked');
        // Remove extraneous tabs
        dialogDefinition.removeContents( 'target' );
        dialogDefinition.removeContents( 'advanced' );

        // Set default URL
        var infoTab = dialogDefinition.getContents( 'info' );
        var urlField = infoTab.get( 'url' );
        urlField['default'] = contentUrl;
    }

    // If "Image" dialog
    if ( dialogName == 'image' ) {
        // Remove extraneous tabs
        dialogDefinition.removeContents( 'Link' );
        dialogDefinition.removeContents( 'advanced' );

        // Set default URL
        var infoTab = dialogDefinition.getContents( 'info' );
        var urlField = infoTab.get( 'txtUrl' );
        urlField['default'] = contentUrl;
    }
});
如果单击CKEditor中的选项,将调用

CKEditor.on。我不知道如何获取与当前编辑器关联的CKFinder实例并将默认视图设置为list。我正在使用JavaScript和JSP。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。

在CKFinderJava.war / ckfinder目录下的config.js中进行必要的配置。     config.defaultViewType_Images ='缩略图';     config.defaultViewType_Files ='list'; 这是来自ckeditor的图像和链接的设置。如果您希望所有显示都是列表     config.defaultViewType ='list';