Firefox没有正确选择可信的文本

时间:2013-11-15 20:00:00

标签: javascript jquery html firefox contenteditable

我正在尝试在网络应用中实现元素的内联编辑。我正在使用contenteditable执行此操作,以便在用户编辑元素时保留格式。

用户双击一个元素后,我将其contenteditable属性设置为true并选择文本(使用此SO question中的方法),以便他们可以开始编辑马上而不必选择文字。这在Chrome和Safari中可以正常工作(不关心IE)。 然而,在Firefox中,文本确实被选中,但是在您取消选择并手动重新选择文本之前它是不可编辑的。(例如,如果您双击某个元素,它会被选中,但如果您开始输入要编辑所选文本,不会发生任何事情)

我已尝试stopPropagation()preventDefault()execCommand('selectAll', false, null)无济于事。

这是一个JSFiddle来向您展示我在说什么。在Chrome / Safari和Firefox中试用它,看看Firefox中的问题。

$('#title').dblclick(function(){
    $('#title').attr({'contenteditable' : true});
    $('#title').css({'border-bottom' : '3px dashed #E3E1E4'});            
    selectText('title'); 
});

1 个答案:

答案 0 :(得分:1)

将以下行添加到dblclick处理程序:

$('#title').focus();