--UPDATE--如何獲得前端的文件網址上傳的文件
所以我試圖創建一個文件預覽,讓別人對前端上傳文件,訪問瀏覽器文件作爲一個blob ,並在iframe中預覽它們。
必須能夠預覽所有打開的文檔文件
我現在的問題是,viewer.js(http://viewerjs.org/instructions/)似乎不使用BLOB文件的工作。這是我得到的最接近的信息。https://github.com/kogmbh/ViewerJS/issues/230
任何想法都可以使用所有打開的文檔文件進行此項工作?插件建議?
低於當前代碼..
fileUploadProcessFiles: function(fileInput){
console.log("MODALJS.fileUploadProcessFiles");
var m = $(document).find("#modal"),
list = $("#uploadList"),
files = fileInput.files,
type = m.find("option:selected").text();
for (var i = 0; i < files.length; i++) {
// Display List
list.append(`<div class='hundredWidth'>"+
<label class='autoWidth underline'>${type}</label><label class='cancelIconSmall inlineBlock' onclick='MODALJS.fileUploadRemoveFile(this)' style='margin-left: 10px'></label>
<label class='oneWide'>${files[i].name}</label>"
</div>`);
// Store Preview Links
var blobURL = URL.createObjectURL(files[i]);
MODALJS.fileUploadPreviewLinks.push(blobURL);
// Append Iframe Preview
list.append(`<iframe src="${MODALJS.fileUploadPreviewLinks[i]}" allowfullscreen webkitallowfullscreen width="400px" height="400px"></iframe>`);
// Push to upload queue
MODALJS.fileUploadFiles.push(["file", files[i]]);
}
},
--update#2--
所以我就想通了。我不得不使用不同的插件。改爲webODF ......我現在應該可以拼湊出足夠體面的解決方案。
fileUploadProcessFiles: function(fileInput){
console.log("MODALJS.fileUploadProcessFiles");
var m = $(document).find("#modal"),
list = $("#uploadList"),
files = fileInput.files,
type = m.find("option:selected").text();
for (var i = 0; i < files.length; i++) {
// Display List
list.append(`<div class='hundredWidth'>"+
<label class='autoWidth underline'>${type}</label><label class='cancelIconSmall inlineBlock' onclick='MODALJS.fileUploadRemoveFile(this)' style='margin-left: 10px'></label>
<label class='oneWide'>${files[i].name}</label>"
</div>`);
// Store Preview Links
var blobURL = URL.createObjectURL(files[i]);
MODALJS.fileUploadPreviewLinks.push(blobURL);
// Append Iframe Preview
list.append(`<div id="odfCanvas"></div>`);
odfElement = document.getElementById("odfCanvas");
odfcanvas = new odf.OdfCanvas(odfElement);
odfcanvas.load(blobURL);
// Push to upload queue
MODALJS.fileUploadFiles.push(["file", files[i]]);
}
},
可能的重複http://stackoverflow.com/questions/34523227/how-to-make-preview-for-each-file-input-with-filereader – LGSon