CKFinder Logo

模态模式

模态模式类似于 弹出窗口。不同之处在于,弹出窗口使用单独的浏览器窗口打开,而在模态模式下,CKFinder 在附加到当前页面文档的模态容器中打开。

多个模态框

在某些情况下,您可能需要多个模态框来处理需要选择文件的多个位置。以下是一个示例,将每个输入框填充所选文件的 URL。

var button1 = document.getElementById( 'ckfinder-popup-1' );
var button2 = document.getElementById( 'ckfinder-popup-2' );

button1.onclick = function() {
	selectFileWithCKFinder( 'ckfinder-input-1' );
};
button2.onclick = function() {
	selectFileWithCKFinder( 'ckfinder-input-2' );
};

function selectFileWithCKFinder( elementId ) {
	CKFinder.modal( {
		chooseFiles: true,
		width: 800,
		height: 600,
		onInit: function( finder ) {
			finder.on( 'files:choose', function( evt ) {
				var file = evt.data.files.first();
				var output = document.getElementById( elementId );
				output.value = file.getUrl();
			} );

			finder.on( 'file:choose:resizedImage', function( evt ) {
				var output = document.getElementById( elementId );
				output.value = evt.data.resizedUrl;
			} );
		}
	} );
}