Phonegap 2.8.0(iOS)在线/离线事件未触发

时间:2013-08-18 19:52:54

标签: ios cordova

还有其他人有类似的经历吗? 我有这个应用程序在Android上工作正常,但在iOS中,在线/离线事件没有解雇。

据我所知,我已经正确设置了一切,我甚至可以使用'FileTransfer'插件,但我的在线/离线事件处理程序没有被调用。

使用以下测试应用程序:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
        <script charset="utf-8" src="js/cordova.js"></script>
        <script>
            document.addEventListener("deviceready", onDeviceReady, false);

            function onDeviceReady() {
                console.log("Device is ready!");
                document.addEventListener("online", onOnline, false);
                document.addEventListener("offline", onOffline, false);
            }

            function onOnline() {
                console.log("Device is online!");
            }

            function onOffline() {
                console.log("Device is offline");
            }
        </script>
    </head>
    <body>
    </body>
</html>

我得到'设备准备就绪!'向控制台报告,但除此之外我什么都没得到。 有什么建议吗?

1 个答案:

答案 0 :(得分:3)

我通过将事件监听器置于设备上方来实现它。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
        <script charset="utf-8" src="js/cordova.js"></script>
        <script>
            document.addEventListener("deviceready", onDeviceReady, false);
            document.addEventListener("online", onOnline, false);
            document.addEventListener("offline", onOffline, false);

            // PhoneGap is loaded and it is now safe to make calls PhoneGap methods
            //
            function onDeviceReady() {
                console.log("Device Ready");
            }

            // Handle the online event
            //
            function onOnline() {
                console.log("Online");
            }

            function onOffline() {
                console.log("Offline");
            }
            </script>
    </head>
    <body>
    </body>
</html>