游标位置,jquery

时间:2009-10-25 14:33:03

标签: jquery

this post我找到并回答了如何将光标放在textarea中。

我正在创建一个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中找到最终位置?

1 个答案:

答案 0 :(得分:0)

如果通过显示textarea中包含的HTML表示您的聊天可以包含<img><a>等标记,则需要转义标记。我猜这就是你想要的,所以试试这个:

HTML(供参考)

<div id="formatted"></div>
<textarea id="textchat"></textarea>

脚本

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

*注意:您可以将keyup替换为keydownkeypress,但我发现keyup的效果更好。