jQueryMobile アプリに次のマークアップを使用します。
<body>
<div id="someDiv">Foo</div>
<div id="portrait" style="display:none">
<div data-role="page" data-fullscreen="true">
<!-- Portrait content goes here -->
Hello user!
</div>
</div>
<div id="landscape">
<div data-role="page" data-fullscreen="true">
<!-- Landscape content goes here -->
Sorry, this app does not support landscape mode. Please rotate your device.
</div>
</div>
</body>
縦向きモードと横向きモード (アプリが実行されているスマートフォン デバイス) で異なるコンテンツを表示するために、対応する div のオンとオフを切り替えます。
if (deviceIsInLanscapeMode() == true){
$("#landscape").css("display", "block");
$("#portrait").css("display", "none");
}
else{
$("#landscape").css("display", "none");
$("#portrait").css("display", "block");
}
さて、それは私に2つの質問を導きます:
- これまでに読んだすべての jQueryMobile のサンプル コードで、ページ (=div と
data-role="page"
セット) がタグの直接の子であることに気付きました。<body>
上記の HTML マークアップでわかるように、ページをコンテナー div にラップしました。これはjQMアプリにとって「悪い考え」ですか? - 最初の子 div (id="someDiv" を使用) は、時々有効または無効 (display:none) にするページのない単なる div です。これは jQueryMobile の問題でしょうか?