焦点/点击时,是否可以在iphone设备上选择所有输入文字?

时间:2012-05-04 16:07:57

标签: jquery iphone select jquery-mobile

焦点/点击时,是否可以在iphone设备上选择所有输入文字?

通常,对于浏览器环境,可以使用:

$('input').bind("click focus", function() {
$(this).select();
});

这适用于桌面浏览器,但对iPhone和其他移动设备似乎没有响应。

4 个答案:

答案 0 :(得分:3)

基本上你必须重新调整事件焦点,然后点击,然后触摸启动

$('#myID').on('focus click touchstart', function(e){
$(this).get(0).setSelectionRange(0,9999);
//$(this).css("color", "blue"); FUBAR
e.preventDefault();
});

答案 1 :(得分:2)

设置(小)超时最适合我: iOS键盘似乎是在委托或其他东西中调用的,因为它一直在失去我的焦点事件以便能够选择内容。 select()由于同样的原因无效。

我这样解决了:

function focusMe(vitem) {
    window.setTimeout(function() { 
      vitem.setSelectionRange(0, 9999);
    }, 10);
}

<input onfocus="focusMe(this)" />

答案 2 :(得分:1)

$('input[type="text"]').on('focus',function(){
    $(this).get(0).selectionStart=0;
    $(this).get(0).selectionEnd=999;
})

我最初发现这些信息here,还有其他一些人尝试过这些信息已经取得了成果。

答案 3 :(得分:0)

我会用这样的东西:

$('input').live("click", function() {
    $('input').each(function(){
        $(this).select();
    });
});
$('input').live("focus", function() {
    $('input').each(function(){
        $(this).select();
    });
});