Как использовать API CKFinder Javascript?

Забавный вопрос, но я, честно говоря, не могу получить доступ (например) к CKFinder.dataTypes.Folder: http://docs.cksource.com/ckfinder_2.x_api/symbols/CKFinder.dataTypes.Folder.html.

Я загрузил демонстрационную версию CKFinder 2.x для asp.net, чтобы опробовать утилиту, и единственное, к чему Intellisense дает мне доступ, — это объект window.CKFinder и некоторые его методы, но больше ничего. Я также не смог найти Folder в ckfinder.js.


person Dante    schedule 22.01.2013    source источник
comment
Может быть, вам лучше обратиться к ресурсам поддержки CKEditor? Это звучит очень специализированно. В любом случае, повторная пометка   -  person Pekka    schedule 22.01.2013


Ответы (1)


Как указано в Документация, вы не можете иметь доступ к нему напрямую, вместо этого вы должны вызвать любую функция API папки после загрузки объекта CKFinder.

Примечание. Пространство имен CKFinder.dataTypes недоступно напрямую (CKFinder.dataTypes не определено). Типы данных используются внутри CKFinder и возвращаются многими функциями, такими как CKFinderAPI#getSelectedFolder.


Следующий пример представляет собой инициализацию в javascript компонента CKFinder, который показывает, как получить доступ к типу данных Folder.

<script type="text/javascript">
    var finder = new CKFinder();
    finder.basePath = '/js/ckfinder/'; // The path for the installation of CKFinder (default = "/ckfinder/").
    // Setting custom width and user language.
    finder.width = '99%';
    finder.defaultLanguage = 'es';
    finder.language = 'es';

    finder.removePlugins = 'basket';
    //finder.selectActionFunction = showFileInfo;
    //finder.resourceType = 'Images';
    //finder.tabIndex = 1;
    //finder.startupPath = "Images:/";

    finder.callback = function( api ) 
    {
        api.openMsgDialog( "", "Almost ready to go!" );
        api.hideTool( "f2" );//hide flash folder
        api.openFolder('Images', '/');
        var folder = api.getSelectedFolder();
        //console.debug(folder);
        folder.createNewFolder( 'New Folder' );
        //api.setUiColor('white');
    };
    var api = (finder).create();

    //console.debug(api);
    //api.openMsgDialog("Sample title","Sample message."); //doesnt work here, CKFinder still not loaded.
</script>
person xtrm    schedule 07.05.2013
comment
Также при тестировании некоторых изменений убедитесь, что вы закрыли браузер и открыли его снова. Я видел много проблем с кэшем и конфигурацией обновления с помощью CKFinder. - person xtrm; 07.05.2013