0

私はこれがwindow.getSelection()メソッドを使用することでjavascriptで可能であることを知っていますが、私はこの選択オブジェクトに精通していません。ユーザーの書き込みカーソルが常に入力文字列の先頭にくるようにコードを書くのを手伝ってもらえますか?

$('input[type="text"]')
    .attr('maxlength','7')
    .keyup(function(){
        var sel = window.getSelection();
        console.log(sel);
        // need a code for here to make the cursor (caret) at the begining of the string

    })
4

3 に答える 3

2

いつでもCSSを使用できます。direction: rtl; このコード行は、テキストの方向を右から左に変更するだけで、次を使用してcssクラスをhtml要素に追加できます。.addClass("your_class")

このメソッドはクラスを置き換えないことに注意することが重要です。クラスを追加し、すでに要素に割り当てられている可能性のあるクラスに追加するだけです。

編集:キーアップ機能の外に置いてみてください.addClass("your_class")(それでもあなたが探している最良の結果が得られないかもしれませんが)、それを行うためのより良い方法については以下の私のコメントをチェックしてください。

更新:これを行う別の方法があります

$('input[type="text"]').change(function () {
$(this).val() = $(this).split("").reverse().join("");
});
于 2012-07-19T11:12:36.263 に答える
2

次の組み合わせを使用して実行できます。

  • dir = "rtl"
  • キーを押すたびにテキストボックスの注意を0に移動します

デモ: http: //jsfiddle.net/FF9Tf/1/

注:これらの回答からのヒント/コードを使用します。

于 2012-07-19T11:38:07.987 に答える
0

これを試してみてください。入力ボックスのテキストの先頭でカーソルが点滅し続けます

$('input[type="text"]')
    .attr('maxlength','7')
    .attr('dir', "rtl")
    .keyup(function(){
        var sel = window.getSelection();
        console.log(sel);
        // need a code for here to make the cursor (caret) at the begining of the string

    })

デモリンク http://jsfiddle.net/hcWCQ/1/をお試しください

たとえば、入力ボックスをクリックしてからShift + Tabキーを押してから、探しているものとは正確に一致しない入力を開始します。

于 2012-07-19T10:59:24.873 に答える