最近在做一H5项目,使用定位来限制活动签到,防止用户没到现场通过别人转发二维码签到。功能做出来之后,别人用苹果手机一测,傻了,safari的geolocation只支持https的网页调用。正在琢磨怎样绕过这个限制的时候,突然想起微信的jssdk中好像有获取位置信息的功能,一查,果然有。
https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html#.E8.8E.B7.E5.8F.96.E5.9C.B0.E7.90.86.E4.BD.8D.E7.BD.AE.E6.8E.A5.E5.8F.A3
幸好H5是微信中用,甲方也有公众号,调用微信的jssdk可以实现,于是换成了jssdk解决了这个事儿。但是换句话说,想要做h5版的lbs游戏,就只能用https了。
另外,发现了另一个safari的js问题,同样的new Date("2016-01-01")
,chrome和安卓浏览器都能正确解释,在苹果safari中就解释不了,日期格式需要new Date("2016/01/01")
的格式,不过测试了一下安卓上也支持这个格式,那就把格式转一下吧:
day = day.replace(/-/g, "/");
网友评论