1

我正在使用 jQuery mobile 创建一个简单的基于 phonegap 的应用程序。

这是我的 HTML 的标题

<script src="scripts/jquery-1.8.2.min.js"></script>
<script src="scripts/jquery.mobile-1.1.1.min.js"></script>
<script src="scripts/jquery.jsonp-2.4.0.min.js"></script>
<script type="text/javascript" charset="utf-8" src="scripts/cordova-2.2.0.js"></script>
<script src="scripts/my.js"></script>

在我添加了所有 HTML 代码之后的正文中

<script>
$(document).ready(function() {
navigator.notification.confirm('Do you want to quit', 
        function(){
            if(button == "1"){
                 navigator.app.exitApp(); }
        }, 
        'QUIT TITLE', 
        'OK,Cancel'  
    );
</script>

我得到错误

12-27 21:28:17.998: D/CordovaLog(17212): Uncaught TypeError: 无法调用未定义的方法“确认” 12-27 21:28:17.998: D/CordovaLog(17212): file:///android_asset/ www/app.html:第 227 行:未捕获的类型错误:无法调用未定义的方法“确认”

如您所见,我已经加载了所有必要的脚本,并且正在调用 navigator.notification.confirm内部$(document).ready

不知道为什么我会收到这个错误。请帮忙。

4

1 回答 1

4

首先,您的脚本标签内的代码未正确关闭。

您正在尝试在成功加载之前使用 Phonegap 库。$(document).ready(function() {不应与 jQuery mobile 一起使用(您将在底部链接中找到有关此的更多信息),它也不会告诉您是否加载了 phonegap 库。

您的代码应该像这样初始化:

document.addEventListener("deviceReady", deviceReady, false);

function deviceReady() {
    navigator.notification.confirm('Do you want to quit', 
        function(){
            if(button == "1"){
                navigator.app.exitApp(); 
            }
        }, 
        'QUIT TITLE', 
        'OK,Cancel'  
    );
}

您可以在此处找到更多相关信息:https ://stackoverflow.com/a/14010308/1848600和此处:http ://docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html

于 2012-12-27T16:27:23.590 回答