CKFinder Ajax 文件預覽功能允許用戶在不離開當前頁面的情況下查看和打開文件。要實現這一功能,您需要遵循以下步驟:
<head>
部分添加以下代碼來實現這一點:<script src="//ckeditor.cdn.telerik.com/2021.2.616/ckfinder/ckfinder.js"></script>
CKFinder.replace()
方法初始化 CKFinder。這將替換當前頁面上的 <input type="file">
元素,并允許用戶選擇文件。CKFinder.replace('input[type="file"]');
請確保將 'input[type="file"]'
替換為您的 HTML 文件中用于選擇文件的實際 <input>
元素的 ID。
fileSelected
事件。當用戶選擇一個文件時,此事件將被觸發。您可以在此事件的處理程序中執行文件預覽操作。CKFinder.on('fileSelected', function (evt) {
var file = evt.data.file;
previewFile(file);
});
fileSelected
事件處理程序中,調用一個名為 previewFile
的函數,并將所選文件作為參數傳遞。以下是一個使用 HTML5 FileReader API 的示例實現:function previewFile(file) {
var reader = new FileReader();
reader.onload = function (e) {
var container = document.getElementById('file-preview');
if (!container) {
container = document.createElement('div');
container.id = 'file-preview';
document.body.appendChild(container);
}
var img = document.createElement('img');
img.src = e.target.result;
container.appendChild(img);
};
reader.readAsDataURL(file);
}
在這個示例中,我們首先創建一個名為 file-preview
的 <div>
元素(如果尚不存在),然后使用 FileReader API 讀取所選文件并將其轉換為 DataURL。最后,我們將 DataURL 設置為 <img>
元素的 src
屬性,從而在頁面上預覽文件。
現在,當用戶通過 CKFinder 選擇一個文件時,它將在頁面上預覽。請注意,這個示例僅適用于圖像文件。如果您需要預覽其他類型的文件(如 PDF、文檔等),您可能需要使用其他方法或庫(如 PDF.js、ViewerJS 等)。