近期移动前端项目中遇到的两个坑

虽然要多加避免。但还别说,坑还真得常踩常有,不要以为手机端都是 Webkit 的天下就简单,不用处理浏览器之间的兼容问题,——事实上不一致性的问题还是挺大的。

两个坑都是涉及 iframe 的——iframe 真是不好搞。

事情是这种,一个内嵌于 iframe 的页面。由于须要从认证接口中返回 token 作为登录凭证,读取接口信息是没问题的,然后须要用 session 把登录信息保存起来。

奇怪的是,session 无效,就像丢失了一样!脱离了 iframe 就是单独页面的话就没事。并且不是所有手机都这样。高版本号安卓和苹果都这样(桌面和某些版本号安卓正常)。我们知道一般用 cookies 一对一 session 的,预计 iframe 的 cookie 鉴于更完好的安全机制所以不能像低版本号那样“愉快”地使用 cookies。

后来简直与甲方说出了我们“殚精竭虑”。无奈之下。仅仅好使出最笨的方法,通过 url 參数传递认证数据。

还好几个页面,加起来也没那么痛苦了……

第二个坑是苹果专属的。Safari 竟然不能约束 iframe 内页面的宽度!安卓就 ok。简单说发现嵌入页面在移动端会出现变形,即使你加上

<meta name="viewport" content="width=320, initial-scale=1, user-scalable=yes" />

也无效。

假设写死一个宽度那么就不能兼容苹果各种屏幕了。

于是我居中正文。但有些人又不允许这种不符合美观的做法,于是我用 js 读取屏幕宽度然后写入 document.body.style.width。两行代码搞定。关键是思路。

转载于:https://www.cnblogs.com/clnchanpin/p/7149063.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值