これは、HTMLだけを使用してシミュレートすることができます。
チェックボックスの直前にテキスト入力要素を挿入します。 JavaScriptを追加します。その入力にフォーカスがあるときにキーを押すと、チェックボックスの状態が変わります。
a jsbin exampleはedit the sourceです。この例についての注意事項:
は<fieldset>
を使用していない - jsbinの編集モードでのiOS 6の入力力は、クローズの長いタッチを使用してテキストを選択する(jsbinコードやIFRAMEとの何らかの相互作用でなければならない)、およびキャレットを常に隠します(この状況では便利ですが、そうではありません)。 Safariのバグが悪いので私のように見えます(しかし、あまり目立たないので、実際には見ていませんでした。)ユーザーがオプションをタッチすると、キーボードは非表示になります。
集中したチェックボックスに使用するスタイルを見つけるのに多大な時間を費やすことはありませんでした。
点滅しているキャレットを隠すことができないアイデアについては、jsbinの例にいくつかの不具合があります。キャレットを隠すための巧妙な解決策があるなら、私は興味があります。
iOSデバイスのみにこの修正を適用するには、ブラウザを盗聴する必要があります。
これは標準のiOS UIの動作ではないため、他のアプリに行くときにユーザーを混乱させる可能性があります。モバイルSafariの将来のリリースで、このソリューションが簡単に壊れる可能性があります。
キャレットを隠す方法をいくつか試しましたが、最も効果的なのは-webkit-transform: scale(0.01); transform: scale(0.01);
です。 font-sizeを使う:1px;ほとんど動作しますが、入力がフォーカスになるとiPhoneがズームします(テストされたiPad iOS5、ズームされていない、iPhone iOS6がテストされズームされている)。
私はウェブ上のアプリケーションで同じ問題を抱えています。私はPhoneGapを使用していません。あなたはこの問題を解決しましたか? –
@ JosiahSprague基本的には、「AppleがUIWebViewコントロールを修正するまで待つ」以外に、これに対する解決策はありません。また、私は後で顧客が嘘をついていることを知った、それはウェブサイトのバージョンで働いたことはない。 – joshuahealy
編集した質問は、情報の一部が間違っていたことがわかりました – joshuahealy