2013-04-10 29 views
5

Vấn đề này là trên iPad IOS6 trong Safari di động.Mobile Safari jQuery select() trên đầu vào tiêu điểm không hoạt động

Tôi không nhập văn bản vào đầu vào được chọn tự động khi người dùng nhấp vào đầu vào.

tôi có một giải pháp mà làm việc trong một trình duyệt thông thường, như Chrome:

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

Nhưng isn't này làm việc trong Safari Mobile.

Tôi đã đọc nhiều bài về vấn đề này, ví dụ: 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

Tôi đã thử nghiệm đề nghị sollution trong một hình nộm đơn giản, nhưng tôi không thể nhận được bất kỳ trong số họ làm việc trên thiết bị iPad. http://kraner.se/customers/test.html

Tôi muốn nhận được sự sollution làm việc cho việc này. Bất kỳ ai?

Trả lời

3

Tôi đã thay đổi javascript để này (thay đổi cách lựa chọn các văn bản được thực hiện và làm thế nào để có được biến đầu vào):

 $(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); 
    } 

và bây giờ nó hoạt động như intented. đầu vào với type = number dường như không hoạt động.

Tôi đã thử nghiệm tính năng này trên iOS6 và iOS7 và nó cũng hoạt động trong Chrome và IE mới nhất trên Windows 7. Mặc dù IE ở chế độ tương thích không hoạt động.

+0

THX;) Cuối cùng là một sollution làm việc! – Turbojohan

+1

Không hoạt động trên iPhone 5S .. – whirlwin

+1

Một vấn đề nhỏ, nó phải là 'input.value.length' thay vì' input.val(). Length'. – niftylettuce

Các vấn đề liên quan