5

重複の可能性:
モバイル サイト - 強制横向きのみ / 自動回転なし

これに関するいくつかの投稿を見てきましたが、決定的な答えは実際には見つかりませんでした。

Web ページを介してデバイスの向きを強制することは可能ですか? つまり、サイトをランドスケープとして「ジャム」できますか?

どうもありがとう

4

1 に答える 1

4

JavaScript でできます。最初にサポートされているかどうかを確認します。

if (window.DeviceOrientationEvent) {
    console.log("DeviceOrientation is supported");
}

次に、ローテーションで何かをしたい場合は、eventListener を追加します。

window.addEventListener('deviceorientation', function(eventData) {});

向きが変わったときに反応するようにあなたの側をトリガーする必要があると思います。デバイスがそれを行うため、向きをトリガーすることはできません。したがって、Web サイトがランドスケープ モードで読み込まれる場合は、それを検出してサイトをランドスケープ モードでレンダリングする必要があります (カスタム CSS をロードしますか?)。その後、訪問者が携帯電話またはタブレットの向きを変えると、リスナーは新しい CSS でサイトを再レンダリングできます。 JavaScript を介してファイルします (これらの状況では jQuery をお勧めします)。

また、サイトにはあまりダイナミクスがありません。GETメソッド呼び出しでページを再ロードして向きを変更することもできますが、もちろん、これはより遅いオプションになる可能性があります. モバイル デバイスで JavaScript を使用して Web サイト全体を再レンダリングすると、以前に iPhone でテストした場合と比べて、電話が過熱することさえあります。JavaScript エンジンは高速であり、すべてをスムーズにレンダリングするために多くの CPU を引き出しますが、短時間で多くのリソースを消費するため、モバイル デバイスが常にレンダリングを維持することは困難です。これの最も良い例は、JavaScript 呼び出しで HTML5 ゲームを作成する場合です。iPhone は最終的に、実際のアプリでゲームをプレイするように熱くなることがあります:P.

于 2012-06-26T13:09:09.483 に答える