4

我正在尝试创建几种方法让 tinyMCE 将光标移动到文本中的某个 SPANS,如果所有跨度都在文本的可见部分中,这可以正常工作,但是对于长文档,当跨度不是时可见(必须滚动才能查看),它会移动插入符号,但文本不会滚动:

这个问题显示了如何移动插入符号,但它不会滚动。如何强制编辑器滚动到插入符号位置?

4

2 回答 2

6

我找到了解决方案,在设置插入符号位置后,添加一些文本,编辑器会自动滚动到新位置:

ed.execCommand('mceInsertContent', false, "");
于 2012-08-30T20:52:11.903 回答
0

@leonardorame 的答案有效,但它仅将文本滚动到页面底部的视图中,如下所示:

……

……

|

如果您希望插入符号位于顶部...

|

……

……

那么你需要一点额外的:

//save the current position
var bm = ed.selection.getBookmark(2, true);

//scroll to the end
ed.selection.select(ed.getBody(), true);
ed.selection.collapse(false);
ed.execCommand('mceInsertContent', false, ");

//scroll back up, so that the caret is now at the top
ed.selection.moveToBookmark(bm);
ed.selection.collapse(false);
ed.execCommand('mceInsertContent', false, "");
于 2018-12-18T06:46:17.590 回答