1

現在、jquery mobileを使用してモバイルWebサイトで作業していますが、向きの変化を検出する際に問題が発生しました。私のモバイルWebサイトは、ポートレートモードの場合は向きを「風景」として検出し、SamsungGalaxyでテストする場合はその逆を検出します。ただし、iphone nHTCDesireで正しく動作します。私はいくつかのフォーラムで、Androidのバグとして、誰かがsetTimeOutを使用してそれに取り組んだことを発見しました。しかし、それを使って問題を解決することはできません。それが私の構文エラーかどうかはわかりません。誰かが親切に私を教えてくれますか?前もって感謝します。

サンプルコードをいただければ幸いです。

これが私の現在のコードです:

    $(document).ready(function() {


    $(window).bind("orientationchange", function (event) {

            setTimeout(detectOri(event),100);

    });

    function detectOri(event)
    {

        alert(event.orientation);

        if(event.orientation == 'portrait')
           {

              //load portrait mode page
           }

           else if(event.orientation == 'landscape')
           {

             //load landscape mode page
           }

    }

});
4

2 に答える 2

0

DOM対応を使用するべきではありません

pageinitを使用する

于 2011-11-15T03:19:04.010 に答える
0

これを変更setTimeout(detectOri(event),100);します:

setTimeout(detectOri,1000);
于 2012-05-03T17:39:45.747 に答える