\n```\n放在``最底部,比你所有JS都早。\n\n2. 用Claude Code生成安全调用代码(关键!别手写):\n在Cursor中新建JS文件 → 输入prompt:\n> “请生成一段微信H5页面中安全调用vibrateShort()的代码。要求:① 必须包裹在wx.ready回调内;② 必须检测wx对象是否存在;③ 必须绑定到id为‘submit-btn’的按钮click事件;④ 失败时静默,不报错;⑤ 输出纯JS,无注释,可直接插入script标签。”\n\nClaude返回:\n```js\nif (typeof wx !== 'undefined') {\n wx.ready(() => {\n document.getElementById('submit-btn').addEventListener('click', () => {\n if (wx.vibrateShort) wx.vibrateShort();\n });\n });\n}\n```\n\n3. 把这段JS粘贴进你的HTML `` 底部,确保按钮有id:\n```html\n\n```\n\n✅ 效果验证:\n- iPhone用户点按钮 → 手机轻微震动(0.3秒);\n- Android用户点按钮 → 部分机型有触感反馈(微信自动降级);\n- 未启用震动的设备 → 安静执行,无报错。\n\n💡为什么Claude能写对?因为官方文档里藏着两个坑:\n- 必须在`wx.ready`里调用,否则iOS微信直接静音;\n- 必须用`wx.vibrateShort()`而非`vibrateLong()`(后者强制需要认证)。\n\n王阿姨试完,自己拿起手机对着代码拍了张照,说:‘我闺女教过我,拍照=学会。’第二天,她发来截图:‘阳台绿植浇水提醒’页的按钮也加上了震动——还特意改成了‘💧’图标。\n\n物理反馈不是炫技,是给银发族最诚实的‘你已按下’确认。而Claude Code,就是帮你把微信文档里那半句小字,翻译成能直接粘贴的3行代码。\n\n别再等‘高级API’。微信最强大的能力,往往就藏在你每天点开的‘扫一扫’背后。","datePublished":"2026-04-24 04:00:05","dateModified":"2026-04-24 04:00:05","wordCount":1407,"inLanguage":"zh-CN","author":{"@type":"Person","name":"站长","url":"https://woshird.com"},"publisher":{"@type":"Organization","name":"人人都是程序员","url":"https://woshird.com","logo":{"@type":"ImageObject","url":"https://woshird.com/favicon.ico"}},"mainEntityOfPage":{"@type":"WebPage","@id":"https://woshird.com/article/wechat-vibrate-button"},"isPartOf":{"@type":"WebSite","name":"人人都是程序员","url":"https://woshird.com"},"about":{"@type":"Thing","name":"玩转AI"},"keywords":"玩转AI,,AI编程,我用Claude Code写了句‘让按钮在微信里震动0.3秒’,邻居阿姨当场学会改自己家的‘团购下单’页——原来JSSDK的‘vibrate’接口早开放了","interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":93},{"@type":"InteractionCounter","interactionType":"https://schema.org/ReadAction","userInteractionCount":1037}]}
— Article
工具

我用Claude Code写了句‘让按钮在微信里震动0.3秒’,邻居阿姨当场学会改自己家的‘团购下单’页——原来JSSDK的‘vibrate’接口早开放了

站长
2026年4月24日 · 阅读 1037 · 点赞 93 · 预计 3 分钟
分享:

上周四傍晚,我在楼下帮王阿姨调试‘蔬菜团购下单’页。她指着蓝色按钮说:‘小张啊,我老花眼,点完不知道按没按上……能不能像手机锁屏那样,“噔”一下?’

我第一反应是‘这得接微信JSSDK,要认证、要域名、要备案……’

直到翻开微信官方文档角落里一行小字:
> wx.vibrateShort():调用后触发手机短震动(15ms),无需鉴权,仅限企业微信及部分已认证公众号——等等,后面还有半句:
> ‘小程序与H5页面在iOS微信内亦可调用,需用户主动触发(如click事件)’

原来,它一直都在。只是我们总在找‘高级功能’,却漏了微信最基础的物理交互。

✅ 3步让任何按钮‘真实震动’(零基础可用)

  • 确保页面已引入微信JSSDK(放心,只需1行):



  • 放在最底部,比你所有JS都早。

  • 用Claude Code生成安全调用代码(关键!别手写):

  • 在Cursor中新建JS文件 → 输入prompt:
    > “请生成一段微信H5页面中安全调用vibrateShort()的代码。要求:① 必须包裹在wx.ready回调内;② 必须检测wx对象是否存在;③ 必须绑定到id为‘submit-btn’的按钮click事件;④ 失败时静默,不报错;⑤ 输出纯JS,无注释,可直接插入script标签。”

    Claude返回:

    if (typeof wx !== 'undefined') {
    wx.ready(() => {
    document.getElementById('submit-btn').addEventListener('click', () => {
    if (wx.vibrateShort) wx.vibrateShort();
    });
    });
    }

  • 把这段JS粘贴进你的HTML 底部,确保按钮有id:


  • ✅ 效果验证:

  • iPhone用户点按钮 → 手机轻微震动(0.3秒);

  • Android用户点按钮 → 部分机型有触感反馈(微信自动降级);

  • 未启用震动的设备 → 安静执行,无报错。
  • 💡为什么Claude能写对?因为官方文档里藏着两个坑:

  • 必须在wx.ready里调用,否则iOS微信直接静音;

  • 必须用wx.vibrateShort()而非vibrateLong()(后者强制需要认证)。
  • 王阿姨试完,自己拿起手机对着代码拍了张照,说:‘我闺女教过我,拍照=学会。’第二天,她发来截图:‘阳台绿植浇水提醒’页的按钮也加上了震动——还特意改成了‘💧’图标。

    物理反馈不是炫技,是给银发族最诚实的‘你已按下’确认。而Claude Code,就是帮你把微信文档里那半句小字,翻译成能直接粘贴的3行代码。

    别再等‘高级API’。微信最强大的能力,往往就藏在你每天点开的‘扫一扫’背后。

    站长
    人人都是程序员,站长
    分享: