5

此问题出现在移动 Safari 中的 iPad IOS6 上。

我不想在用户单击输入时自动选择输入中的文本。

我有一个适用于普通浏览器的解决方案,比如 Chrome:

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

但这在 Safari Mobile 中不起作用。

我已经阅读了几个关于此的主题,例如: 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

我已经在一个简单的假人中测试了建议的解决方案,但我无法让它们中的任何一个在 iPad 上工作。 http://kraner.se/customers/test.html

我想为此获得一个可行的解决方案。任何人?

4

1 回答 1

3

我将javascript更改为此(更改了文本选择的完成方式以及如何获取输入变量):

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

现在它按预期工作。type=number 的输入似乎不起作用。

我已经在 iOS6 和 iOS7 上对此进行了测试,它也适用于 Windows 7 上的最新 Chrome 和 IE。不过,兼容模式下的 IE 不起作用。

于 2013-10-18T11:45:17.493 回答