我有一个按钮
<button id="emoji"><img src="emoji.png"></button>
我有以下 Javascript 代码
$(function () {
$('#emoji1').on('click', function() {
var img = document.createElement('img');
img.className = 'emoji';
img.src = 'stick/kiss.png';
var text = $('#text');
text.val(text.val() + img);
});
})();
我希望在按下按钮时将图像添加到 a 中<textarea id="text">
,并且我可以继续输入。
你试图做的事情是不可能的。类型标记
<textarea />
旨在仅包含文本。您可以做的就是将其设置为背景图像,并通过background-color: transparent
CSS 使 textarea 透明。您不能
textarea
直接使用它,因为textarea
根据定义它只支持文本。您可以做的是创建自己的富文本编辑器 (RTF),尽管我真诚地建议您使用其他已经扩展的选项(例如 TinyMCE),因为这是一项艰巨而复杂的任务。此解决方案需要一个
iframe
或一个div
可编辑的,创建您自己的按钮来执行不同的功能,并且在执行必要的操作时(发送表单,或可编辑字段失去焦点),更新 textarea 的值( “隐形”)特别是。这是一个基本示例(单击“提交表单”以查看 textarea 的值):
但是正如您所看到的,它是非常基本的(表情符号仅放置在末尾,而不是光标所在的位置),如果您真的想创建一个更完整的 RTF,这需要更多:计算要放置的光标的位置那里的表情符号,不同的功能(粗体,斜体等),看起来不像,但它开始累加起来,最终可能会变得难以置信的大。
我是新手,我将在下面添加代码,祝你好运。
这段代码的作用是,当您在这种情况下按下表情符号或图像时,“像我使用的 WhatsApp 面孔这样的图像”,它的作用是在 a 中添加相同的面孔
div
并继续在插入的面孔旁边书写。这是 HTML 代码:
这是脚本的一部分:
这段代码的作用是,当您在这种情况下按下表情符号或图像时,“像我使用的 WhatsApp 面孔这样的图像”,它的作用是在 div 中添加相同的面孔并继续在插入的面孔旁边书写
使用 textarea 可能是不可能的(如果图标包含在字体的字符中,则可以使用它们),但是通过可编辑的 div 可以添加自定义图标。
示例由 andrewfiorillo