Local Storage setItem将图像存储在数组中并使用getItem显示

时间:2014-10-16 13:03:35

标签: javascript html5 local-storage

我有一个Web应用程序,我试图在ImageArray中存储不同的图像(在不同的页面中存在),这是一个javascript数组。我查了一下网,发现HTML5中的LocalStorage API是一种有效的方法,因为即使在页面重新加载后变量也会被保留。

我的问题是我有一个ImageArray,我使用saveImage()功能存储我的图片。

var ImageArray = new Array();   //declared as global variables
var i=0;     //declared as global variables


function saveImages(Image)

{
    if(ImageArray.length < 4)

       {           
        ImageArray[i] = new Image();
        ImageArray[i].src = Image;

        //alert('ImageArray:::'+ ImageArray);
        // ImageArray.push(Image);
        i=i+1;

        alert('Added For Comparison : ');
        alert('no_of_pics_added' + ImageArray.length);

        window.localStorage.setItem('ImageArray', JSON.stringify(ImageArray));
        //alert('ImageArray' +  JSON.stringify(ImageArray))
        }
        else
        {
        alert('You have already added 4 pics for comparison' + ImageArray.length);
        }
}

这是displayImages()函数,它应该检索已保存的图像。

function displayImages()

{       
    if(window.localStorage.getItem('ImageArray') == null){
        alert('12124235246');
        var ImageArray =[];

    }
     else

    {    alert('98987987');
        ImageArray =  JSON.parse(window.localStorage.getItem('ImageArray'));

    }

    ImageArray = new Array();   // initialising once the Images are displayed
    i=0;

}

程序进入了else循环但没有任何反应。我从中发现window.localStorage.getItem和window.localStorage.setItem函数是这里的问题。我尝试过同时使用window.localStorage.getItemlocalStorage.getItem。我使用的浏览器支持HTML5(chrome 37)。 我一直在推荐这些链接

How to get JS variable to retain value after page refresh?
How to retain javascript array while page refresh?

有人请告诉我我做错了什么。在此先感谢。)

0 个答案:

没有答案