繁体   English   中英

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

[英]Is it possible to select all input text on iphone device when focus / click?

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

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

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

这适用于台式机浏览器,但对于iPhone和其他移动设备似乎无响应。

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

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

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

我以这种方式修复了它:

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

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

我最初是在这里找到此信息的,还有人们尝试过的其他方法也取得了效果。

我会用这样的东西:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM