我已经弄清楚如何预加载图像。我现在想知道的是,是否有任何方法可以使用 Javascript 来获取缓存图像的本地文件路径。
问问题
194 次
1 回答
1
您可以结合使用 FileReader 和 sessionStorage。
就像是:
var input = document.querySelector("#imageInput");
input.addEventListener("change", function(e){
var reader = new FileReader();
reader.onload = function(evt){
var newImage = document.createElement("img");
newImage.src = evt.target.result;
document.querySelector("body").appendChild(newImage);
sessionStorage.setItem("image", evt.target.result);
};
reader.readAsDataURL(e.target.files[0]);
}, false);
window.addEventListener("load", function(e){
if(sessionStorage.getItem("image")){
var newImage = document.createElement("img");
newImage.src = sessionStorage.getItem("image");
document.querySelector("body").appendChild(newImage);
}
}, false);
这会将您的所有图像存储在浏览器上,并通过帖子和重新加载使它们保持不变。然后,您可以根据需要添加任何逻辑来编辑它们。
不幸的是,你不能设置“文件”类型的输入,所以你需要做一些 UI 魔术。
于 2013-06-28T23:49:39.170 回答