2010-12-14 46 views
0

iPad用のモバイルSafariにうまく表示されているWebアプリケーションで作業しています。

スプリングボードのアイコン、スプラッシュ画面などを表示するための正しいメタタグをまとめて、ショートカットをスプリングボードに保存すると、最終的にはうまく再生されます。 $(window).height()呼び出しが0

返します(私はそのことについておかしくなりそうだ際に、常にではない、といいえ、私が言うことができない)私はのためにサイズを知っている必要があります

は残念ながらアプリは$(window).width()$(window).height()と頻繁に使用していますビューポートのサイズと向きに応じて画像の幅と高さを動的に設定します。アプリケーションでは、jQuery-uiとjQGridも使用され、高さが0に評価されると、それらは両方ともブレークします。

jq-uiダイアログは、画面の中央に表示されず、表が正しく表示されません。

+1

あなたは[ここに記載されている](http://www.learningjquery.com/2006/09/introducing-document-ready)のように '$(document).ready(...)'を使っていますか?あなたのスクリプトは、DOMの読み込みが完了するまで実行されません?これを行っていない場合(またはそれと同等のもの)、間欠的な「ゼロハイト」問題の原因になる可能性があります。 – Lee

+0

この質問はあまりにも漠然とした答えにはあいまいです。 –

答えて

0

ビューポートが原因です。通常の画面では、基本的なX座標のY座標です。タッチスクリーンでは、大きなページ(ウェブサイト)の上を移動する小さな紙のビューポートをビューポートと考えてください。あなたのウェブサイトを表示するために、Safariはビューポートを使います:

モバイルSafariは、あなたのウェブサイトを表示するためにビューポートを使用します。あなたの目の前に本を想像してみてください。紙をとり、その中に320×416の正方形を切り、本の上に置きます。本を読むには、紙を動かし、見たい言葉の上に穴を置きます。これはまさにモバイルサファリのビューポートがやっていることです。フリックしてスクロールすると、その背後のウェブサイトが静止している間にビューポートを移動します。

この問題により、必要な値を取得できない場合があります。以下はその記事へのリンクです。うまくいけば、これはさらにスクリーンアプリケーション

http://doctyper.com/archives/200808/fixed-positioning-on-mobile-safari/

に触れることに関しての位置決めにいくつかの光を当てるだろう、リーはあなたが文書の準備ができているしていることを確認する必要があることが正しいです。

+0

はい$(document).readyを使用します。同じアプリがSafari Mobileでうまく動作することに注意してください。ブックマークをバネボードに保存してアプリケーションをフルスクリーンモードで表示すると問題が発生します。 – simone

1

iPadの問題ではありませんでした。結果を検索して検索した後、私はhttpリクエストとiPadから発行され、asp.netによって実行されたレスポンスについて調査することにしました。asp.netがcontent-typeを "application/xhtml + xml" "text/html"ではなく "mobile.browser"ファイルのバグで、http://mdbf.codeplex.comから取得しました。これはiPadアプリケーション/ xhtml + xmlをpreferredMimeTypeとして設定しています! 正しいタイプにリセットしたら、すべて正常に動作します。 同じ問題が発生した場合に備えて、私はここに返信しています。 btw、mdbfはサポートされなくなりました。すべて

0

短い遅延の後に幅&高さをチェックしてみ - 例えば:setTmeout(300)。

関連する問題