这里使用百度地图作为例子,高德地图只是跳转链接不一样,可参考API文档,封装成了函数,具体应用可自己优化一下。
function goMap()
{
var lat = "23.143669", //纬度
lng = "113.331238", //经度
zoom = "13";
wapLink = "http://api.map.baidu.com/geocoder?location=" + lat + "," + lng + "&zoom=" + zoom + "&output=html&src=webapp.baidu.openAPIdemo";
if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i))
{
//alert("ios1");
window.location.href = "baidumap://map/geocoder?location=" + lat + "," + lng + "&src=ios.baidu.openAPIdemo";
window.setTimeout(function()
{
window.location.href = wapLink;
}, 2000);
}
else if (navigator.userAgent.match(/android/i))
{
//alert("android1");
window.location.href = "baidumap://map/geocoder?location=" + lat + "," + lng + "&src=andr.baidu.openAPIdemo";
window.setTimeout(function()
{
window.location.href = wapLink;
}, 2000);
}
else
{
window.location.href = wapLink;
}
}
简单粗暴,先是判断所属设备,然后直接跳转地图api,如果已安装app则会提示打开app,如未安装会无反应则等待2秒后打开网页版地图。
