焦点/点击时是否可以选择iPhone设备上的所有输入文本?

问题描述 投票:0回答:4

当焦点/单击时,是否可以选择 iPhone 设备上的所有输入文本?

通常对于浏览器环境,人们会使用:

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

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

jquery iphone select jquery-mobile
4个回答
4
投票

基本上,您必须重新排列事件焦点,然后单击,然后触摸开始

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

2
投票

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

select()
不起作用。

我是这样解决的:

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

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

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

我最初在这里找到了此信息,并且人们尝试过其他一些方法也取得了结果。


0
投票

我会用这样的东西:

$('input').live("click", function() {
    $('input').each(function(){
        $(this).select();
    });
});
$('input').live("focus", function() {
    $('input').each(function(){
        $(this).select();
    });
});
© www.soinside.com 2019 - 2024. All rights reserved.