私はかなり基本的なjqueryモバイルページを持っていますdata-role:page
.1つの3つのdivindex.php
です。最初のページは単なる背景画像input type="tel"
でposition:fixed
、画面中央に があります。サイトを iPhone に直接ロードすると、スタイルと配置がすべて正しくなります。
?event=123123123
ただし、ユーザーは、パラメータ (ランダムな文字列など)を渡す外部リンクを介してサイトにアクセスします。この方法でロードすると、最初のページは常にスタイルなしでロードされます。つまり、入力ボックスは、インラインであるか、ヘッドで宣言されているか、外部ファイルからロードされているかに関係なく、jquery.css と自分自身の両方のすべての css を無視します。ページを更新すると、スタイルが有効になり、想定どおりに表示されます。
pagebeforeload
私は基本的に、pageinit
、などへのバインドなど、考えられるすべてのこと (およびおそらく意味をなさない多くのこと) を試しましたpageshow
。たとえば、次のようにします。
$( '#step1' ).live( 'pagebeforecreate',function(event){
// alert( 'This page was just enhanced by jQuery Mobile!' );
$('<div id="formbox"><form><input type="tel" name="number" id="number" value="" style="width:87%; height:40px; font-size:36px; font-weight: bold; left:14px; position:relative; text-align:center;" /></form></div>').appendTo('#formboxouter');
// var $container = $('#step1');
// refreshStyles($container);
$('#formbox').trigger('create');
// $( window.document ).trigger( "mobileinit" );
});
私はフラストレーションの「壁にすべてを投げて、何が固執するかを確認する」段階に達しましたが、何も固執していません。
内部リンク (例: ) を変更する方法に関する多くの情報を見つけましrel=external
たが、これが発生する理由を説明するようなものは何も見つかりませんでした。
外部パラメータを渡すとスタイルがロードされないのはなぜですか?