- 我很愚蠢的犯了个错误搞得浪费很久。。以前好像也犯过这样的错误,就是一个页面上写两个地图,我以为怎么呢第二个死活出不来,结果发现是因为宽高的设置问题,这简直了,以为千万记住没宽高东西不会显示出来的。
- 百度的api没啥好说的,很简单引用接口就行了
- 现在遇到的问题是需求点击地图上的导航自动检测用户手机里面有没有安装地图软件,然后显示出安装的,点击安装的以后还要能打开已经安装的那个app,我觉得这样很麻烦,一要判断手机安装了那个app,二还要判断手机安装的是ios的还是android的,要我说直接连接一个webapp多好。
- 解决的:在微信页面内调用百度webapp
<a href="http://api.map.baidu.com/place/detail?uid=d3099bdd81c525dbd1f49ee6&output=html&src=yourCompanyName|yourAppName " > <img src="image/daohang1.png" > </a>
5 .经过多方查找。。。搞了半天自己弄得判断用户手机里安了什么地图导航,又搞了半天点击这个的是安卓还是ios手机神马的以后,最后还是搞了微信内置的地图接口,我给想的太难了,这接口直接能完成上述功能。代码就这几行。。哎。。。
wx.getLocation({
type: 'gcj02', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
success: function (res) {
$("#map-left").click(function(){
wx.openLocation({
latitude: res.latitude, // 纬度,范围为-90~90,负数表示南纬
longitude: res.longitude, // 经度,范围为-180~180,负数表示西经
scale: 15, // 缩放比例
})
})
}
});
6 .就这样还遇到一些bug不过都改了,虽然看上去没啥问题了,我感觉还是有隐患,新人的路。。很漫长啊
7.然后今天终于给这个bug改完了,但是心里完全没松口气反而很压抑,感觉自己没有一点思考的能力,上一个百度坐标转换的东西,各个参数的说明看这个网址点击打开链接
var ggPoint = new BMap.Point(p.coords.longitude,p.coords.latitude);
var convertor = new BMap.Convertor();
var pointArr = [];
pointArr.push(ggPoint);
convertor.translate(pointArr, 1, 5, translateCallback);