Cordova Phonegap本地存储未定义

Cordova Phonegap本地存储未定义,cordova,Cordova,使用phonegap 2.0,我无法理解window.localstorage返回未定义存储的原因。Window.device工作得很完美,但当我对Window.localstorage执行console.log时,它是未定义的,我不知道为什么。我确保将插件添加到xml中(我正在使用Android)。非常感谢您的帮助。我觉得这很简单,但我就是看不到 下面是index.html文件的代码片段 <!DOCTYPE html> <html lang="en"> <

使用phonegap 2.0,我无法理解window.localstorage返回未定义存储的原因。Window.device工作得很完美,但当我对Window.localstorage执行console.log时,它是未定义的,我不知道为什么。我确保将插件添加到xml中(我正在使用Android)。非常感谢您的帮助。我觉得这很简单,但我就是看不到

下面是index.html文件的代码片段

<!DOCTYPE html>
<html lang="en">
    <head>
        <title></title>
        <meta charset="UTF-8">
        <meta name = "format-detection" content = "telephone=no"/>
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
        <link href="css/styles.css" rel="stylesheet">
        <script src="phonegap/android.js"></script>
        <script src="js/childbrowser.js"></script>
        <script>        

            document.addEventListener('touchmove', function(e){
                e.preventDefault();
            }, false);

            document.addEventListener('deviceready', function(){

                alert(window.localstorage);

            }, false);

        </script>
    </head>
    <body>

        <!-- DEVELOPMENT -->
        <script src="libs/zepto.js"></script>
        <script src="libs/underscore.js"></script>
        <script src="libs/backbone.js"></script>
        <script src="libs/iscroll.js"></script>
        <script src="js/app.js"></script>   
    </body>
</html>

文档.添加的事件列表器('touchmove',函数(e){
e、 预防默认值();
},假);
document.addEventListener('deviceready',function(){
警报(window.localstorage);
},假);

我在几乎所有的应用程序中都使用了一些函数,这样在处理用户偏好时就更容易了

function getPref(iKey, iDefault){
    try{
        var R = window.localStorage.getItem(iKey);
        if (R==null || R=='') {return iDefault;} else {return R;}
    }catch(e){return iDefault;}     
}

function setPref(iKey, iData){
    window.localStorage.setItem(iKey, iData);
}
用法:

// on load user preferences procedure
$('#GPSCheckbox').val(getPref('UseGPS','off'));
$('#WiFiCheckbox').val(getPref('WiFiOnly','on'));


// on save user preferences procedure
setPref('UseGPS',$('#GPSCheckbox').val());
setPref('WiFiOnly',$('#WiFiCheckbox').val());

我希望这对您的情况有所帮助…

您能提供一个代码片段,说明您如何使用它吗?您是否为localStorage设置了任何键/值?如果是这样,我在你的代码中看不到。。。看看我在下面添加的代码片段。这两个函数处理localStorage对象中键/值的设置和获取。我还介绍了在加载和保存用户首选项时如何在应用程序中使用这两个功能。我发现了这个问题。存储中的s需要是大写的s。谈谈感觉愚蠢!!