Telegram 机器人按钮
Telegram 机器人按钮类型大全(2025 年最新版)
本文整理了 Telegram Bot API 中所有类型的按钮,包括 ReplyKeyboard(自定义键盘) 与 InlineKeyboard(内联按钮),并补充了文档未完全公开的隐藏按钮行为,如:复制按钮、回填输入框文本(不带 @bot) 等….
📌 按钮类型总览
分类
类型
字段
功能说明
✅ 自定义键盘
文本键盘
text
替代输入框,点击后作为消息发出
✅ 自定义键盘
小程序键盘
web_app
用户点击后进入小程序
✅ 自定义键盘
请求联系人
request_contact
用户点击后分享手机联系人
✅ 自定义键盘
请求位置
request_location
用户点击后分享 GPS 定位
✅ 自定义键盘
请求用户
request_users
用户点击后从好友中选择一个用户(Bot API 6.7+)
✅ 自定义键盘
请求聊天
request_chat
用户点击后选择一个群组/频道
🎛️ 内联按钮(InlineKeyboardMa ...
📱 Telegram WebApp 开发经验总结
一份专注于用户体验的 SPA 应用开发技巧汇总(包含震动反馈、弹窗设计、导航建议等)。
✅ 一、Telegram WebApp 的震动反馈(Haptic Feedback)Telegram 提供的震动反馈 API:
类型
方法
说明
轻微反馈
Telegram.WebApp.HapticFeedback.impactOccurred(‘light’)
轻点击、轻提示
中等反馈
Telegram.WebApp.HapticFeedback.impactOccurred(‘medium’)
按钮、确认动作
重度反馈
Telegram.WebApp.HapticFeedback.impactOccurred(‘rigid’)
删除、错误等关键操作
选择改变反馈
Telegram.WebApp.HapticFeedback.selectionChanged()
用于选项切换
成功/警告/错误通知
Telegram.WebApp.HapticFeedback.notificationOccur ...
原生 copy 监听实现方案实现用户通过手机浏览器、Telegram 小程序、PC 浏览器等方式 使用系统原生复制操作 时,自动触发提示反馈(如弹窗、震动等),无需依赖复制按钮。
💡 灵感来源此方案源自对 Hexo 博客主题(如 Butterfly、Fluid 等)实际行为的观察:
用户长按选中文字 → 使用系统“复制”按钮 → 页面弹出复制成功提示。
说明其复制提示并非绑定点击按钮,而是监听 copy 事件实现。
因此确认:可以监听用户触发的原生 copy 行为,并在监听中加入提示逻辑。
✅ 功能描述
✅ 支持原生复制行为(长按 → 复制);
✅ Telegram WebApp / iOS / Android 均可触发;
✅ 支持带图标的提示框;
✅ 可选配震动反馈;
✅ 对无空格长串字符强制换行处理。
📦 实现代码1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636 ...
Telegram WebApp 展示模式与返回按钮 API 总结✅ 展示模式(Display Modes)Telegram WebApp 提供三种展示模式,开发者可根据需要调用相应 API 控制 Web 应用的尺寸和行为。
1. 默认模式(Compact)
行为: 不调用任何扩展函数,WebApp 默认以“半屏模式”打开。
效果: 下方显示 WebApp 页面,上方保留 Telegram 聊天界面。
代码:
12Telegram.WebApp.ready();// 不调用 expand() 或 requestFullscreen()
2. Fullsize 模式(最大可用高度)
行为: 使用 expand() 使 WebApp 占据最大可用高度。
效果: 页面视觉上接近全屏,仅保留顶部导航栏。
代码:
12Telegram.WebApp.ready();Telegram.WebApp.expand();
3. Fullscreen 模式(真正全屏)
行为: 请求进入全屏,隐藏 Telegram 的顶部状态栏(仅部分客户端支持)。
效果: 真正的沉浸式全屏体验,Telegra ...
Telegram WebApp
未读📦 Telegram WebApp API 功能模块(概览)🧩 基础配置与初始化123Telegram.WebApp.ready();Telegram.WebApp.expand();Telegram.WebApp.requestFullscreen?.();
✅ MainButton 主按钮12345Telegram.WebApp.MainButton.setText("确认");Telegram.WebApp.MainButton.show();Telegram.WebApp.MainButton.onClick(() => { // 处理点击});
🔙 返回按钮控制 BackButton1234Telegram.WebApp.BackButton.show();Telegram.WebApp.BackButton.hide();Telegram.WebApp.BackButton.onClick(() => { ... });Telegram.WebApp.BackButton.offClick( ...
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment