ContentEditable专注于Chrome/Safari

She*_*abu 7 html safari google-chrome contenteditable

我有一个contenteditable div需要集中在pageload(将光标放在第一行).

document.getElementById("editor").focus() 在Firefox和IE中运行良好,但在Chrome/Safari中它只选择整个内容!

有没有办法使这项工作正常?

在此先感谢,
Shesh

Alt*_*eus 2

这个问题可能不再与提问者相关,但我会为未来的读者回答。基本原则是将选择设置为元素开头的折叠范围。

我通过使用 Rangy JS 库解决了这个问题: http: //code.google.com/p/rangy

var r = rangy.createRange();
r.setStart( document.getElementById('editor'), 0 );
r.collapse(true);
rangy.getSelection().setSingleRange(r);
Run Code Online (Sandbox Code Playgroud)

这可能超出了必要的范围,但它确实可以跨浏览器工作,而且 Rangy 还提供了一堆额外的实用程序,因此可能值得研究一下:)