【发布时间】:2014-02-03 08:24:03
【问题描述】:
我正在使用 jQuery 在一个元素之后插入一个 DOM 节点,该元素有一个 contenteditable 父级。我想将光标集中在插入的 DOM 节点上,但在插入的元素上调用 focus() 似乎不起作用。这是我尝试过的。
// HTML
<div class="foo" contenteditable>
<h1>Foo</h1>
</div>
// jQuery
$(document).on('keydown', '.foo', function(e){
if (e.keyCode == 13) {
var anchor = $( document.getSelection().anchorNode.parentElement ),
var el = $("<p></p>");
anchor.after(el);
el.focus();
e.preventDefault();
}
});
【问题讨论】:
-
嗯,还有其他方法可以移动光标吗?在这个网站上,他们可以移动光标以在敲击回车时生成一个 P 标签,然后将光标移动到它上面。这会覆盖正常的 contenteditable 行为。 daviferreira.github.io/medium-editor
-
您可以自行更改光标位置:stackoverflow.com/questions/2388164/…
标签: jquery cursor contenteditable