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

您总是可以使用 CSSdirection: rtl; 这行代码只需将文本的方向更改为从右到左,然后您可以使用将 css 类添加到您的 html 元素中.addClass("your_class")

请务必注意,此方法不会替换类。它只是添加类,将其附加到任何可能已经分配给元素的类。

编辑:尝试将.addClass("your_class")keyup 功能放在外面(尽管这可能仍然无法为您提供您正在寻找的最佳结果),请查看我下面的评论以获得更好的方法。

更新:这是另一种方法

$('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 回答