2

アプリで外部 URL を表示するために iframe を使用していますが、インターネットまたは Web サイトが利用できなくなった場合、エラー メッセージを表示したいと考えています。私のコードでは、deviceready/resume/online/offline イベントを使用しています。ただし、私の問題は、deviceready イベントが発生し、定義した他のメソッドを呼び出すように見えますが、他のイベントが発生していないように見えることです (機能しています)。したがって、インターネットまたは Web サイトが突然利用できなくなった場合、iframe は更新されず、同じページ/画像にとどまります。ユーザーの観点からは、何が起こっているのかわかりません。

以下は私のコードの一部です:

    <script type="text/javascript" charset="utf-8" src="cordova-1.6.0.js"></script>

       <script type="text/javascript" charset="utf-8">


            function onload() 

            {

                document.addEventListener("deviceready", onDeviceReady, false);

            }


            function onDeviceReady() 

            {

                document.addEventListener("pause", onPause, false);

                document.addEventListener("resume", onResume, false);

                document.addEventListener("offline", onoffline, false);

                document.addEventListener("online", onOnline, false);

                checkUrl();

            }


            function onPause() {

              //code for the pause function     

            }

            function onResume()

            {

                   checkUrl();

            }


            function onoffline()

            {

               //display error message

            }


            function onOnline()

            {

                checkUrl();

            }


            function checkUrl()

            {

               //code to check the url is valid

                alert("checkur");

             }


            function onerror()

          {

                //display error message

           }                


          </script>

        </head>


<body onload="onload()">

    <div id="divFrameHolder" style="visibility:hidden;" scroll="no">

        <iframe allowtransparency src="http://www.XXXXX.com" id="iframe"width="100%" height="100%" scrolling="no" frameborder="0" onerror="onerror();" style="text-align:center;" >

        </iframe>

    </div> 


</body>

cordova-1.6.0 を使用すると、Android と iPhone の両方で同じ問題が発生します

あるイベントが機能しているので、他のイベントも機能するはずだと思っていたので、これは何年もの間私を怒らせてきました。ヘルプ/アドバイスをいただければ幸いです。

4

0 に答える 0