2

jquery ui autocomplete を使用して入力を検索します。

iPad で入力をクリックすると、キーボードが正しく表示されます。

次に、単語を入力すると、検索結果が表示されます。ときどき、iPad ですべての結果が表示されないことがあります。だから、キーボードを隠す必要があります。しかし、キーボードを非表示にすると、結果を表示するオートコンプリート メニューが消えます。

それは、インプットへの集中力を失っているからです。

iPad などのタッチ デバイスを使用して、現在の入力に集中したりポイントしたりするにはどうすればよいですか?

これを見つけましたが、実装方法がわかりません: http://forum.jquery.com/topic/autocomplete-menu-disappears-on-ipad

私の英語でごめんなさい、私はフランス人です。

4

1 に答える 1

3

実際には、次の行を追加するだけです。

if ((/iPhone|iPod|iPad/).test(navigator.userAgent) ) {return;}

の始まりに

.bind( "blur.autocomplete", function( event ) {

関数。

これは、jquery ui フォルダーの autocomplete.js (または類似の名前) にあります。

jquery.ui.autocomplete.js に移動して、次のように変更します。

blur: function( event ) {
            if ( this.cancelBlur ) {
                delete this.cancelBlur;
                return;
            }

            clearTimeout( this.searching );
            this.close( event );
            this._change( event );
        }

これに:

blur: function( event ) {
if ((/iPhone|iPod|iPad/).test(navigator.userAgent) ) {return;}

            if ( this.cancelBlur ) {
                delete this.cancelBlur;
                return;
            }

            clearTimeout( this.searching );
            this.close( event );
            this._change( event );
        }

ここでテストすることはできませんが、これで修正されるはずです

于 2013-04-26T23:13:48.603 に答える