从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中找到最终位置?
答案 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,'<').replace(/>/g,'>');
$('#formatted').html(txt);
})
})
*注意:您可以将keyup
替换为keydown
或keypress
,但我发现keyup
的效果更好。