0

试图弄清楚为什么会发生这种情况 - 我有一个输入文本字段,我希望在该字段获得焦点时突出显示所有文本。这种情况发生得非常快,然后所有文本都被取消选择。知道为什么会发生这种情况吗?这是我正在使用的代码:

$("#permalink").focus(function(){
    this.select();
});
4

3 回答 3

5

您需要覆盖输入元素上的 mouseup 事件(如本文所述- 感谢 MrSlayer!)

例如见这里:http: //jsfiddle.net/f8TdX/

于 2012-06-13T12:24:27.480 回答
1

这是 WebKit 中的一个问题。最好的选择是结合使用focusmouseup事件。以下来自对类似问题的另一个答案。

$("#permalink").focus(function() {
    var $this = $(this);

    $this.select();

    window.setTimeout(function() {
        $this.select();
    }, 1);

    // Work around WebKit's little problem
    $this.mouseup(function() {
        // Prevent further mouseup intervention
        $this.unbind("mouseup");
        return false;
    });
});
于 2012-06-13T14:03:34.157 回答
0

试一试

$(document).ready(function() {
    $("input:text").focus(function() { $(this).select(); } );
});

获得焦点时选择文本框的所有内容(JavaScript 或 jQuery)

于 2012-06-13T12:23:07.273 回答