3

クリック時に入力の最初の5文字を​​選択する関数があります。これは、最初のクリックで機能します。入力ボックスにまだフォーカスがある場合、クロムでは、最初の5文字以内で2回クリックすると選択が削除され、クリックの位置でカレットが点滅します。

最初の5文字はまだ選択されたままであると思います。

Firefoxで正常に動作するため、これはChromeの問題のようです。

これが私のフィドルです:http: //jsfiddle.net/valamas/3eaYq/2/

これをChromeで機能させるにはどうすればよいですか?

を使用して選択をリセットしてみました

sender.setSelectionRange(0, 1);
sender.setSelectionRange(0, 5);
4

1 に答える 1

6

これは確かにChromiumの問題です(そして2年前の問題です)。ChromeをFirefoxと同じように動作させるには、の内容を呼び出しでラップするだけdoSelectですsetTimeout

function doSelect(sender, e) {
    setTimeout(function(){
        sender.setSelectionRange(0, 5);
    }, 0);
}

参照:更新されたJSフィドル


更新:バグはFIXEDChrome 39としてマークされ、Chrome39で配信されるようになりました。

于 2012-08-21T02:36:50.510 に答える