首页 新闻 会员 周边

微信与qq自带浏览器不支持window.opener,有什么方法可以改进?

0
悬赏园豆:10 [已解决问题] 解决于 2017-04-20 11:05

之前为了跨页面传值方便,采用了,window.open,与window.opener,在其他浏览器都可以使用,但在微信与qq自带浏览器却不支持,这是怎么回事?并且子页从父页拿到的数据,过一段时间就会自动消失,这又是怎么回事?不太懂,请大神帮忙,有没有什么改进的方法

小短腿奔跑吧的主页 小短腿奔跑吧 | 初学一级 | 园豆:136
提问于:2017-04-19 12:47
< >
分享
最佳答案
0

恩……这个以前我也遇到过类似的问题,然后在qq和微信的浏览器中使用的跳转仍旧是href,传值的话用localstorage即可。

收获园豆:10
starWind | 菜鸟二级 |园豆:223 | 2017-04-19 16:45

我也是按照这样写的,可是放在服务器上以后子页面数据没传过去,我用HBuilder就可以,是不是服务器的问题?

小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-19 16:51

@小短腿奔跑吧: 你可以先写个localstorage的判断,判断当前浏览器是否支持,或者是在检查哪里写过清空localstorage的代码。

starWind | 园豆:223 (菜鸟二级) | 2017-04-19 16:57

@starWind: 可以了耶,昨天不知道为啥没传过去,今天早晨来了,发现能用了

小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-20 11:05

@小短腿奔跑吧: 那恭喜啦,我的之前一个上线的移动端项目,在微信和其他移动端浏览器都是这样一路踩坑过来的……

starWind | 园豆:223 (菜鸟二级) | 2017-04-20 11:09
其他回答(3)
0

我没有做过这一块,不过如果真的不能使用window.open 的话,那肯定window对象或者open这个方法被微信干掉了.还有你为什么一定要这样做?你可以说说你想做什么,然后大家帮你想想有没有其他的解决办法.

好来污影后 | 园豆:287 (菜鸟二级) | 2017-04-19 13:14

这是我的网址,http://www.ribbonfairs.com/  你可以在手机自带浏览器看一下,再从微信自带浏览器看,我跨页面传值都是用的window.opener,微信传值不显示数据,扣扣也是,没有一定要用window.opener,如果有其他更好的方法也是可以的,还请各位帮忙想想办法

支持(0) 反对(0) 小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-19 13:20

@小短腿奔跑吧: 我大致理解下你的想法,你是想把A页面的一些变量或者其他的参数带到B页面是吗?如果是这样的话,你可以试试用H5的本地存储storage.

支持(0) 反对(0) 好来污影后 | 园豆:287 (菜鸟二级) | 2017-04-19 13:24

@小短腿奔跑吧: 如果我有帮到你,你可以关注我一波哦~

支持(0) 反对(0) 好来污影后 | 园豆:287 (菜鸟二级) | 2017-04-19 13:25

@好来污影后: 我试一下,看看行不行

支持(0) 反对(0) 小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-19 13:28

@小短腿奔跑吧: 应该可以了吧,把分给我咯~

支持(0) 反对(0) 好来污影后 | 园豆:287 (菜鸟二级) | 2017-04-19 16:45
0

应该可以吧,可能是链接不符合要求

狼爷 | 园豆:1204 (小虾三级) | 2017-04-20 09:03

昨天不知道为啥不能用,今天就可以啦,嘿嘿

支持(0) 反对(0) 小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-20 11:03
0

javascript的一些方法在微信里是用不了的,好像是被干掉了。

localstorage好像也无效,因为微信内部会定时清理一些缓存,一些xxx卫士清理的时候这些数据也会被清理掉

Vincent8464 | 园豆:17 (初学一级) | 2017-04-20 10:58

看我网站,可以啦。嘿嘿,我是用的localstorage成功的

支持(0) 反对(0) 小短腿奔跑吧 | 园豆:136 (初学一级) | 2017-04-20 11:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册