图像捕获到localStorage不能一致地检索图像

时间:2015-03-26 09:57:34

标签: javascript jquery image local-storage

在此网站的帮助下(感谢Musa!),我设法获得了一些代码,允许用户捕获图像并将其放在本地存储中。我正在使用嵌入在iBook中的iAd Producer小部件中的代码。

因为我想在书中的几个位置使用小部件,所以我需要唯一地键入存储的每个图像。然而,当我尝试这个时,我遇到了一些我无法解释的问题。

以下是代码:

<div id="zeroDiv">
<input type="file" id="getPic" accept="image/*">
</div>
<div id="picWrapper">
<img id="image">
<div id="buttDiv">
    <button id="picButt"><span class="buttText">Insert image</span>

    </button>
</div>
</div>

uniqueID = "FC-p1"; //this will vary each time the code is used

$(document).ready(function () {
$("#getPic").on("change", gotPic);
if (localStorage['url' + uniqueID]){
    $("#image").attr("src", localStorage['url' + uniqueID]);
    $("#picButt span").text("Change image");
}    
});

function gotPic(event) {
var reader = new FileReader();
reader.onload = function(){
    $("#image").attr("src", this.result);
    localStorage['url' + uniqueID] = this.result;
    $("#picButt span").text("Change image");
};
reader.readAsDataURL(event.target.files[0]);   
}

这是一个在网络上运行得很好的小提琴:https://jsfiddle.net/mikawaben/g02hcr95/2/

然而,当我将其嵌入到iPad上的电子书中时,我注意到当页面重新加载时我有奇怪的行为。如果从相机捕获图像,将替换为从相机胶卷中选择的最后一张图像,而不是使用相机拍摄的最后一张图像。我似乎无法找到任何一致性。有时图像被替换,有时相机拍摄的图像仍然存在。

有什么想法吗?

0 个答案:

没有答案