我正在使用Ruby的wysihtml5-bootstrap gem,并将其与Pusher一起用作实时文本编辑器。当我在其中一个文本框中编辑文本时,它会在该保存对象的其他打开视图中更新。但是,当调用我的更新函数来保存当前在框中的内容然后更新文本的其他打开视图时,光标移动到开头几乎使服务无法使用,除非用户在最后一个单词后点击光标回到结束位置。
使用wysihtml5 .html()函数更新文本视图,是否可以保存光标位置,然后在.html()函数运行后让光标移动到该位置?我很想拥有它,以便在.html()函数运行后光标不会移动或放回到最后一个位置。
var channel = pusher.subscribe("update");
channel.bind("edit<%= @guide.id%>", function(data) {
// alert('Attempting to set value: ' + data.message);
var wysihtml5Editor = $('#some-textarea').data("wysihtml5").editor;
// console.log(wysihtml5Editor);
$(wysihtml5Editor.composer.element).html(data.message);
console.log("New text is: " + $('#some-textarea').val());
});
以上是侦听Pusher触发的特定事件的代码。