手机端点击链接唤醒微信内置浏览器并打开指定页面
可能有很多这样的需求,但目前微信确实没有开发直接打开微信浏览器的协议参数,只能打开微信部分功能!
通过a标签唤起微信:
<a href="javascript:window.location.href='weixin://'">打开微信</a> <a href="weixin://">weixin:// </a> // 控制何时唤起微信 <script> // 可以写一些前置条件,比如复制一段文字 let a = document.querySelector('a') a.href = 'weixin://' </script>
通过a标签唤起微信,有缺陷,没办法带参数过去我们可以通过引入clipboard插件来复制一段文字来完成传递数据(比如关注公众号之类的)
clipboard插件中文网地址
<html> <body> <a>打开微信</a> <body> </html> <script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script> <script> // 简单复制5个数字并打开微信 new Clipboard('DOM的类名等 比如传a', { text: function () { return '12345' } }) let a = document.querySelector('a') a.href = 'weixin://' // 下面这些是唤起微信具体到某个页面的链接 weixin://dl/scan 扫一扫 weixin://dl/feedback 反馈 weixin://dl/moments 朋友圈 weixin://dl/settings 设置 weixin://dl/notifications 消息通知设置 weixin://dl/chat 聊天设置 weixin://dl/general 通用设置 weixin://dl/officialaccounts 公众号 weixin://dl/games 游戏 weixin://dl/help 帮助 weixin://dl/feedback 反馈 weixin://dl/profile 个人信息 weixin://dl/features 功能插件 </script>
通过插件callapp-lib唤起微信等app
比如我们在这里通过callapp-lib唤起微信
<script src="https://unpkg.com/callapp-lib"></script> <script> const options = { scheme: { protocol: 'weixin' //必填项 URL Scheme 的 scheme 字段,要打开的 APP 的标识,比如这里是微信的标识 }, intent: { //安卓原生谷歌浏览器必须传递 Intent 协议地址,才能唤起 APP // 这两个是intent的必填项 package: 'com.tencent.mm',//腾讯微信包名 scheme: 'weixin'、 }, appstore: 'https://weixin.qq.com/', //必填项 APP 的下载地址,比如这里是微信的下载地址 yingyongbao: 'https://sj.qq.com/myapp/detail.htm?apkName=com.tencent.mm', //必填项 APP 的应用宝地址,比如这里微信的应用宝下载地址 fallback: location.href //必填项 唤起app端失败后跳转的地址。 }; //callapp-lib 中传递出来的是一个类,你需要将它实例化,然后才能去调用实例对象的方法 const callLib = new CallApp(options); // 这里是唤端方法。 callLib.open({ // 如果只是唤起app,不需要打开app的某个页面,填空字符串就可以 path: '' //打开app某个页面,需要接收的参数。如果没有就不用写 //param: {}, }); </script>