不要微信内置浏览器!
如题,最近在一个项目中用到了多标签页间的交互,但是某用户拿微信内置浏览器访问,导致多标签页不加载的情况。
于是这个项目就诞生了——
效果

如果你是在微信中打开,这个页面会让你复制链接
如果是非微信,那它会直接跳转到目标链接~
使用方法
简易用法
在你的 HTML 的 <head>
中添加一个标签(建议放到<title>
后,其他<script>
前
):
1 | <script src="https://timpaik.gitee.io/pages/nowechatbrowser.js"></script> |
即可!
高级用法
nowechatbrowser.js
实际上是检测当前页面的UA是否为微信,如果判断是则跳转到跳转页面
当然,你也可以在服务器(Nginx
)中判断直接返回302
跳转的链接是这样的:
1 | https://timpaik.gitee.io/pages/nowechatbrowser?url=www.baidu.com&title=test |
链接有两个参数,一个是url
,即你要跳转的链接(使用encodeURIComponent()
编码),在这里它是www.baidu.com
另一个是title
,如果使用简易用法的js的话会将title
设置为跳转前页面的标题,当然你也可以自定义,这里是test
开源地址
代码很简单,就不多说了,MIT协议,写得不好还见谅
关于微信内置浏览器
尽管微信内置浏览器在开发者中的风评很不好,实现和标准的浏览器有一些区别,但事实上,目前的TBS 5/微信内置浏览器已经能在HTML5test中获得520分以上的分数,也已经支持了绝大部分HTML5的API
所以你很可能用不到本项目(
不过,总有人会踩一脚内置浏览器的坑,希望这个项目对他们能有一些些帮助。