You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JS将Inline按钮宽度改为聊天窗口宽度而非消息宽度

解决Telegram Bot Inline按钮适配聊天区域宽度的问题

你遇到的问题是因为 resize_keyboard 只适用于普通回复键盘(reply_keyboard),对inline键盘完全不起作用。要让inline按钮适配聊天区域宽度,可通过调整键盘布局实现:

方法:将按钮拆分到独立行

把每个按钮单独放在一行中,Telegram会自动让按钮填充聊天区域的可用宽度,修改后的代码如下:

bot.onText(/\/start/, (msg) => {
  const chatId = msg.chat.id;
  bot.sendMessage(chatId, 'Hi! I am Find My Bridge search Bot. Are you looking for a blockchain bridge?', {
    reply_markup: {
      inline_keyboard: [
        [{ text: 'Yes', callback_data: 'yes' }],
        [{ text: 'No', callback_data: 'no' }]
      ]
    }
  });
});

原理是inline键盘的宽度由每行按钮数量和内容决定,当每行仅一个按钮时,它会自动拉伸以适配聊天窗口宽度,而非跟随消息文本的宽度。

内容的提问来源于stack exchange,提问作者Carlos Fernandez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 22:42:39