光标位置,jquery

光标位置,jquery,jquery,Jquery,从中,我找到并回答了如何在文本区域中定位光标 我正在创建一个jquery聊天,我想创建一个简单的html textarea,在textarea前面有一个div,表示textarea中包含的html Mark发布了以下脚本: $.fn.selectRange = function(start, end) { return this.each(function() { if(this.setSelectionRange) {

从中,我找到并回答了如何在文本区域中定位光标

我正在创建一个jquery聊天,我想创建一个简单的html textarea,在textarea前面有一个div,表示textarea中包含的html

Mark发布了以下脚本:

$.fn.selectRange = function(start, end) {

        return this.each(function() {
                if(this.setSelectionRange) {
                        this.focus();
                        this.setSelectionRange(start, end);
                } else if(this.createTextRange) {
                        var range = this.createTextRange();
                        range.collapse(true);
                        range.moveEnd('character', end);
                        range.moveStart('character', start);
                        range.select();
                }
        });
};

Witch工作正常,但我的问题是,如何在显示的html的div中找到结束位置?

如果显示文本区域中包含的html意味着您的聊天可以包含像
这样的标记,则需要转义这些标记。我猜这就是你想要的,所以试试这个:

HTML(供参考)


剧本

$(document).ready(function(){
 $('#textchat').keyup(function(){
  var txt = $(this).val();
  txt = txt.replace(/</g,'&lt;').replace(/>/g,'&gt;');
  $('#formatted').html(txt);
 })
})
$(文档).ready(函数(){
$('#textchat').keyup(函数(){
var txt=$(this.val();
txt=txt.replace(//g',);
$('格式化').html(txt);
})
})

*注意:您可以用
keydown
keypress
替换
keypup
,但我发现使用
keypup
效果更好。我不理解这个问题。“结束”是关于文本区域的选择,你明白吗?那么,您希望在文本区域中选择什么?
$(document).ready(function(){
 $('#textchat').keyup(function(){
  var txt = $(this).val();
  txt = txt.replace(/</g,'&lt;').replace(/>/g,'&gt;');
  $('#formatted').html(txt);
 })
})