当前位置:首页 > JavaScript

js 实现表情

2026-02-01 07:54:52JavaScript

实现表情的 JavaScript 方法

使用 Unicode 字符直接显示表情
Unicode 包含大量表情符号,可以直接在字符串中使用。例如:

console.log("😊"); // 输出笑脸表情
console.log("👍"); // 输出点赞手势

常用 Unicode 表情范围:U+1F600U+1F64F(表情符号)、U+1F300U+1F5FF(其他符号)。

通过 HTML 实体编码显示表情
在网页中,可以使用 HTML 实体编码插入表情:

document.getElementById("emoji").innerHTML = "😀"; // 渲染为 😀

常用编码参考:HTML Emoji Entities

js 实现表情

使用第三方库动态加载表情

  • Twemoji(Twitter 开源库)
    通过 CDN 引入后自动将 Unicode 转为图片:

    js 实现表情

    <script src="https://twemoji.maxcdn.com/v/latest/twemoji.min.js"></script>
    <script>
      twemoji.parse(document.body); // 转换页面内所有表情
    </script>
  • Emoji Mart
    提供表情选择器组件:

    import { Picker } from 'emoji-mart';
    new Picker({ onEmojiSelect: console.log });

自定义表情图片替换
通过正则匹配替换文本中的表情符号为 <img> 标签:

function replaceEmojis(text) {
  const emojiMap = { ":)": "smile.png", ":(": "sad.png" };
  return text.replace(/[:)]|[:\(]/g, match => 
    `<img src="${emojiMap[match]}" alt="${match}">`
  );
}

注意事项

  • Unicode 表情在不同系统/字体下的显示可能不一致。
  • 移动端输入法自带表情键盘,无需额外实现输入功能。
  • 若需兼容旧浏览器,优先使用图片或库方案。

标签: 表情js
分享给朋友:

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swipe…

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js实现图片预览

js实现图片预览

使用FileReader API实现图片预览 通过FileReader对象读取用户选择的图片文件并显示预览: const input = document.getElementById('image…

jquery.js

jquery.js

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互等操作。以下是关于 jQuery.js 的核心信息和使用方法: 获取 jQ…

js实现拷贝

js实现拷贝

实现文本拷贝 使用 document.execCommand 方法(已废弃但兼容性较好): function copyText(text) { const textarea = document…

js 实现链表

js 实现链表

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。与数组不同,链表在内存中是非连续存储的,插入和删除操作效率较高。 链表的实现 在 JavaScrip…