Chrome:用Javascript创建blob文件输入? [英] Chrome: Create file input from blob with Javascript?
本文介绍了Chrome:用Javascript创建blob文件输入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
但是,如果使用 Javscript $ c $创建新的输入文件元素c>,那么可以在创建时插入blob数据?我只对在
chrome(扩展名)
中工作的解决方案感兴趣 - 其他浏览器无关紧要。
解决方案 >新建File()构造函数在chromium / chrome 38+中可用。请参阅文件构造器示例,
var date = new Date (),filename =file-+ date.getTime()+.html; var generatedFile = new File([<!DOCTYPE html>< html>< body>+ filename +< / body>< / html>],filename,{type:text / html,lastModified:date}); var objUrl = URL.createObjectURL(generatedFile); console.log(generatedFile,objUrl); var reader = (); reader.addEventListener(load,function p>
Well, the files attribute of an input[type=file]
is read-only. Therefore I can not write my blob data into this input element.
But if I create a new input file element using Javscript
, then possible to insert blob data on creation? I am only interested in solutions working in chrome (extension)
- other browsers do not matter.
解决方案
new File()
constructor is available at chromium / chrome 38+. See File Constructor Sample , File API.
var date = new Date(),
filename = "file-" + date.getTime() + ".html";
var generatedFile = new File(
["<!DOCTYPE html><html><body>" + filename + "</body></html>"]
, filename
, {
type: "text/html",
lastModified: date
}
);
var objUrl = URL.createObjectURL(generatedFile);
console.log(generatedFile, objUrl);
var reader = new FileReader();
reader.addEventListener("load", function(event) {
console.log(event.target.result)
});
reader.readAsText(generatedFile);
这篇关于Chrome:用Javascript创建blob文件输入?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文