1

phonegapで作成しているアプリで位置固定に問題があります..今までは正常に動作していると思っていましたが、特定の状況下で位置固定が「壊れる」ことがわかりました.. div) いくつかのタブと、いくつかの javascript と css を使用した各タブの onclick を使用して、表示プロパティを使用してメイン ビューを変更します。

ただし、ビューを下にスクロールしてからタブの変更を選択すると、タブの行全体が上に「固定」されたままになるのではなく、下に移動し、新しい下に「固定」されることがわかりましたトップポジションより..

私のコードの主なレイアウトは

<html>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<head>
</head>
<body>
<div id="tabwrap">a couple of divs for tabs blah blah</div>
<div id="content">main view with hide/show etc</div>
</body>

(私はそれを使用していることを示すためだけにメタビューポートタグを含めました)メインビューが下にスクロールされず、それが上にある場合、位置が固定されず、期待どおりに上にとどまります..各タブのonclickイベントにこの行を追加して、「トリック」しようとしました

document.body.scrollTop = document.documentElement.scrollTop = 0;

対応するdivの次のコンテンツをロードする前にトップに戻るようにしましたが、成功しませんでした..

そしてCSS

#tabwrap {height:3em; position:fixed; width:100%; }
#content { padding-top:4em; width:100%; }

ここにjsfiddleの小さなデモがありますが、それが役に立つかどうかはわかりません ..

奇妙なことに、2.3.5 (samsung s5570) では問題がなく、4.2.2 (nexus) で問題が発生していることに気付きましたが、逆のことが予想されます..

4

1 に答える 1

2

ここで、問題を修正したと思われる変更を行いました..

 #tabwrap {height:3em; position:fixed; width:100%; top:0; left:0; z-index:100;}

 #content {position absolute; top:4em; width:100%; height:100%}

htmlドキュメントからも削除されました

height:device-height

から

meta name=viewport tag
于 2013-09-01T00:38:42.430 に答える