モバイル ビューをレンダリングするために jQuery Mobile 1.0a3 (& jQuery 1.5) を使用して Rails 3.03 アプリケーションを構築しています。古い第1世代のiPhoneのSafariで見ています。
フォームの 1 つに collection_select があります。これにより、ボタンのように見えるタッチ可能なコントロールがレンダリングされ、リストを含むポップアップ選択要素が開かれるため、ユーザーはオプション/値を選択できます。ここまでは順調ですね。
問題は…</p>
レンダリングされたボタンをすばやくタップすると、選択リストがポップアップし、すぐに消えます (オプション/値が選択されていません)。もちろん、これによりUIが壊れたり使いにくくなったりします。(ダブルタップかゴーストタップの問題なのかな。)
良いニュースは、レンダリングされたボタンを 500 ミリ秒ほど押して離すと、選択リストがポップアップして残り、ユーザーが選択できるようになることです (私が望む動作)。
私は、Javascript を使って何か特別なことをしているのではなく、jQuery Mobile を「すぐに使える」ものを使用しているだけです。タッチ イベント ハンドラー、デフォルトなどで何かを行う必要があるかどうかはわかりません。多分それは私の古い電話です…</p>
何か案は?
アップデート
Embarcadero Technologies の Antonio Alonso からこの有益な回答を受け取り、問題を解決しました。ありがとうアントニオ!
「jQuery 1.5.2 を含む最新のリリース 1.0a4.1 にアップグレードすることをお勧めします。すべてのファイル、javascript、css、およびイメージをアップグレードすることを忘れないでください。いくつか変更されているため、ドキュメントをもう一度確認してください。 vclick のような仮想イベントです。
http://jquerymobile.com/blog/2011/03/31/jquery-mobile-alpha-4-released/
http://jquerymobile.com/blog/2011/04/07/jquery-alpha-4-1-maintenance-release/
http://jquerymobile.com/demos/1.0a4.1/
問題が解決するかどうかはわかりませんが、以前のバージョンから多くのバグが修正されています。」