2013-04-10 18 views
5

Ten problem występuje na iPadzie IOS6 w mobilnym Safari.Mobile Safari jQuery select() na wejściu fokusowym nie działa

Nie znajduję tekstu na wejściu, które zostanie automatycznie wybrane, gdy użytkownik kliknie dane wejściowe.

Mam rozwiązanie, które działa w zwykłej przeglądarki, podobnie jak Chrome:

 $(document).ready(function() { 
     //Select text on focus for input 
     $("input:text").focus(focustext); 
    }); 
    function focustext() { 
     var input = $(this); 
     setTimeout(function() { 
      input.select(); 
     },100); 
    } 

ale ten isnt pracy w Safari Mobile.

Czytałem kilka wątków na ten temat, na przykład: Workaround to Webkit[Chrome/Safari] javascript select on focus bug (when using tab between fields) Selecting text on focus using jQuery not working in iPhone iPad Browsers

Ja testowałem zasugerował sollution w prosty manekina, ale nie mogę dostać żadnej z nich do pracy na iPadzie. http://kraner.se/customers/test.html

Chciałbym uzyskać za to działające rozwiązanie. Ktoś?

Odpowiedz

3

Zmieniłem javascript, aby ten (zmiana sposobu wyboru tekstu jest zrobione i jak zdobyć zmiennej wejściowej):

 $(document).ready(function() { 
     //Select text on focus for input 
     $("input:text").focus(focustext); 
    }); 
    function focustext() { 
     var input = this; 
     setTimeout(function() { 
      input.selectionStart = 0; 
      input.selectionEnd = input.val().length; 
     },100); 
    } 

a teraz pracuje jako odnie. dane wejściowe z typem = liczba nie wydają się jednak działać.

Testowałem to na iOS6 i iOS7, a także działa w najnowszym Chrome i IE na Windows 7. IE w trybie zgodności nie działa, choć.

+0

THX;) Wreszcie działające rozwiązanie! – Turbojohan

+1

Nie działa na iPhone 5S .. – whirlwin

+1

Jeden mały problem, powinien to być 'input.value.length' zamiast' input.val(). Length'. – niftylettuce

Powiązane problemy