插入HTML末尾的summernote点光标

时间:2018-10-27 07:57:10

标签: javascript jquery summernote cursor-position

我要尝试的是在页面上选择文本,然后将该文本作为引号添加到文本编辑器(例如summernote)中。

效果很好,我正在使用以下代码来实现相同的效果

$pby = 'someone';
$selected_txt = $.trim(window.getSelection().toString());
$quote_htm = '<blockquote class="hero"><small><i class="fa fa-quote-left"></i> originally posted by <strong>'+$pby+'</strong></small><em>'+$selected_txt+'</em></blockquote><br /><p></p>';

将以上引用插入到我使用的以下代码的summernote文本编辑器中

$existing_htm = $("#forum_reply_descr").summernote("code");
$html = ($existing_htm == '<p><br></p>' ? '' : $existing_htm)+$quote_htm;
$("#forum_reply_descr").summernote("code", $html);
$("#forum_reply_descr").summernote({focus: true});

这也可以很好地工作,但是光标位置保持在文本的开头,我想将光标定位在html的末尾,但是我找不到任何以编程方式将光标移到末尾的地方!

有没有一种方法可以使用Summernote API或任何黑客工具来移动光标以达到相同的结果?谢谢。

1 个答案:

答案 0 :(得分:0)

尝试在您的项目中实现

$('#some_id').focus(function(){
  var input1 = this;
  setTimeout(function(){ input1.selectionStart = input1.selectionEnd = 10000; }, 0);
});


<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id='some_id' type='text' value='input message here with cursor at the end'>