3

私は自分の問題の解決策を探して何日もグーグルしてきましたが、成功しませんでした。だからここで私はあなたの助けを求めています。よろしくお願いします。

このページはここで見ることができます!。

ヘッダーとサイドバーはスタイルシートでposition:fixedになっていますが、leftの値はjQueryで動的に生成されます。ウィンドウのサイズ変更またはズーム時にヘッダーとサイドバーを適切に再配置するために、次のものを追加しました。

/* Reload page on window Resize */
jQuery(window).bind('resize',function(){
    window.location.href = window.location.href;
});

ウィンドウが部分的に占有されている状況(たとえば、Firefoxでブックマークを表示するために[CTRL] + [B]を押すなど)のために、次を追加しました。

/* Reload page if window Partially Occupied */
var screen_width = screen.width;
window.onresize = function(){
  if(window_width != screen_width) {
    location.replace(location.href);
  }    
}

コード全体を見てください。気に入っていただければ幸いです。

問題:

iPadで、向きを縦向きから横向きに変更すると、ページが継続的にリロードされます(縦向きですべて問題ありません)。私は2番目のものでテストしたのでiPadが壊れているとは思わない。

誰かが問題が何であるか教えてもらえますか?そして、同じことがギャラクシータブで起こった場合はどうなりますか?

ありがとうございました!

4

2 に答える 2

0

問題:

iPad では、向きを縦向きから横向きに変更すると、ページが継続的にリロードされます (縦向きの場合は問題ありません)。2台目でテストしたので、iPadが壊れているとは思いません。誰が問題が何であるか教えてもらえますか? そして、Galaxy Tab で同じことが起こったら?

答え:

$(window).bind('orientationchange', function (e) {
    switch (window.orientation) {
        case 0:
            //portrait mode
            break;
        case 90:
            //turned to the right
            location.reload();
            break;
        case -90:
            //turned to the left
            location.reload();
            break;
    }
});
于 2013-01-08T09:18:10.323 に答える
0

サイズ変更時にページをリロードするのは悪い習慣のように思えます。メディア クエリを使用して、ページのサイズ変更時に CSS の変更を設定してみてください。

この問題を解決するには、iPad で方向変更イベントを追跡し、クライアントが iPad の場合はサイズ変更イベントを無視することを試みることができます。

そのためには、JQuery Mobile (JQM) を追加する必要があると思います。http://jquerymobile.com/test/docs/api/events.htmlで JQM イベントを参照してください。

于 2012-09-11T20:34:44.893 に答える