私はしばらくの間、オフとオンをいじっていた iPhone OS アプリの jQTouch をいじっています。私は自分の手でそれを Web アプリとして構築してみたいと思ったので、jQTouch で遊んでみました。参考までに、ここにページとソースを示します (すべてのコードが現在含まれてindex.html
いるため、「ソースを表示」するだけですべてを表示できます)。
http://rpj.me/doughapp.com/wd/
基本的に、data() メソッドを使用して、Google ローカルから取得した関連する JSON オブジェクトを DOM オブジェクトに保存しようとしています (この例でobj
は、Google ローカル オブジェクトです)。
$('#locPane').data('selected', obj);
その後(別の「ペイン」で)、使用するオブジェクトを取得します。
$('#locPane').bind('pageAnimationEnd', function(e, inf) {
var selobj = $(this).data('selected');
// use 'selobj' here ...
}
デスクトップ OS (私の場合は Snow Leopard) の Chromium と Safari では、これは完全に機能します (試してみてください)。
ただし、上記の 2 番目のスニペットのundefined
への呼び出しでは、同じコードが返されます。$(this).data('selected')
私も試してみまし$('#' + e.target.id).data('selected')
た$('#locPane').data('selected')
。undefined
iPhone OS バージョンの WebKit ではすべての亜種が返されますが、デスクトップでは返されません。
興味深いことに、これを iPhone シミュレーターの Mobile Safari で実行しても失敗します。
jqt
完全なソースを見ると、このオブジェクトをグローバルな jQTouch オブジェクト (コードで名前を付けたもの) に保存しようとしていることがわかります。これも、モバイル プラットフォームでは失敗します。
他の誰かがこれに遭遇したことがありますか? 私は本業の Web/JavaScript プログラマーではないことを認めます。もし私が愚かな間違いを犯している場合は、そのことを指摘してください。
助けてくれてありがとう!-RPJ
更新:元の投稿では明確にしませんでしたが、一貫して機能する場合は、任意の回避策を受け入れます。私は一般的にこれらのオブジェクトを保管するのに苦労しているので、それらを保管できるものであれば何でも今のところ十分です。ありがとう!