0

iPad、iPad2 などの IOS5 では、iBooks は<input type="color">、入力フィールドをクリックしたときにキーボードを表示するように求める方法として受け入れられました。たとえば、質問への回答を入力します。最近、IOS6 にアップデートしたばかりですが、この回避策は機能していないようです。ここで見つけた JavaScript を使用してみました - http://www.linkedin.com/groups/How-Show-iPads-Keyboard-when-3877009.S.84287009

<script type="text/javascript"> 

function iPadTouchHandler(event) { 
var type = "", 
button = 0; /*left*/ 

if (event.touches.length > 1) 
return; 

switch (event.type) { 
case "touchstart": 

// OLD: On iPad2 clicking on a text input field did not show the keyboard 
//  if ($(event.changedTouches[0].target).is("select")) { 
// NEW: Now on iPad2 the touchstart-Event on input fields is ignored and everything         works fine 
// change my by Roland Caspers, Scheer Management 
if ($(event.changedTouches[0].target).is("select") ||     $(event.changedTouches[0].target).is("input")) { 

return; 
} 
iPadTouchStart(event); /*We need to trigger two events here to support one touch drag     and drop*/ 
event.preventDefault(); 
return false; 
break; 
</script> 

ただし、このコードは時代遅れであり、IOS5 に関連しているようです。入力を含むページをiFrameに配置する回避策を知っています。その場合、<input type="text">を使用できますが、移動する傾向があるため、iFrameには近づかないことをお勧めします入力ボックスがどこにあるかに応じて、周りのコンテンツ。他の可能な解決策または回避策について何か考えはありますか? ティヴム:)

4

2 に答える 2

0

私もiOS6で同じ問題に直面していますが、同じことが<iframe>タグで完全に機能しています。ただし、画像やスタイルなどは省略しています。

コード「http://www.linkedin.com/groups/How-Show-iPads-Keyboard-when-3877009.S.84287009」を確認してください。以下の条件で変更が必要なことがあります。

($(event.changedTouches[0].target).is("select") ||     $(event.changedTouches[0].target).is("input"))

誰かが以前の応答を提供してくれれば素晴らしいと思います。

ありがとう

于 2012-09-27T08:05:05.550 に答える
0

私は iOS 7 の iBooks でこの同じ問題に苦労しました。注意が必要な部分は、iBooks がおそらくすべてのテキスト入力フィールドをデフォルトで無効にしているということでした。私たちはprototype.jsを使用しているので、プロトタイプ用に書かれた私のソリューションは次のとおりです:

$('my-input-field-id').observe('touchstart', function(event) {
    var element = event.element();
    if (element.disabled)
        element.disabled = false;
    element.focus();
    event.stop();
});

したがって、入力フィールドで「touchstart」イベントをリッスンし、タッチされたときにフィールドを有効にしてフォーカスします。通常のテキスト フィールド ( <input type="text">) で機能します。単純 :-)。

于 2013-10-18T08:33:58.947 に答える