【发布时间】:2016-08-10 13:09:46
【问题描述】:
我有 textarea 用于在用户键入时添加文本和表情符号。为了让笑脸起作用,我有用户可以单击或使用用户设备键盘上的默认值的图像。 目前我可以输入框或使用 emjois,我不能同时做。
要获取字符的 unicode,我必须将 unicode 字符串添加到 textarea,例如:
var t = $('#msgWriteArea').html() + '&#x'+ code;
$('#msgWriteArea').html(t);
我遇到的问题是,当我在插入这些之前或之后在框中输入文本时,可以通过 .val() 或 value 属性访问文本,并且可以通过 .html() 或 innerHtml 属性访问 Unicode 字符。
有没有一种方法可以将文本作为 HTML 而不是作为值输入到 textarea 中,或者有没有一种方法可以将 unicode 字符和文本组合在同一个 textarea 中。
JS Fiddle的问题
设法解决了这个问题,有很多东西需要改变,最重要的是改变 textarea 这让事情变得容易了很多
这是一个小提琴,
不能把所有的功劳都归功于,这些问题的答案很有帮助
Insert text into textarea with jQuery
Get caret position in contentEditable div
How to set caret(cursor) position in contenteditable element (div)?
How to replace selected text with html in a contenteditable element?
这不是最整洁的编码,可能可以做得更好,请随时编辑fiddle,如果可以的话,让它变得更好,它可能会帮助其他被困在同一个地方的人
【问题讨论】:
标签: javascript jquery html unicode utf-8