用js的如下方法,修改浏览器地址栏的url,不刷新网页
history.pushState
或history.replaceState
微信里面打开,安卓手机能实现效果。
iPhone手机,没有实现修改url的效果。
测试流程:
微信中打开url1 ---> history.pushState修改为url2
---> 点击微信界面右上角按钮,分享给好友/复制链接
---> 分享出的链接,iPhone手机是url1,安卓手机是url2
如果执行:
window.location.href
当前的值,则是url2 ,而分享给好友后,则是url1
如何解决iPhone手机的问题?
安卓没有问题。ios版本微信的链接按照
首次进入的链接来算
,pushState无效。这个我做微信支付的时候遇到的坑,你注意一下