参考链接:http://blog.sina.com.cn/s/blog_73a4b2cd0102wpgy.html
- 下载百度地图 api 的 js
http://api.map.baidu.com/getscript?v=2.0 - window.BMAP_AUTHENTIC_KEY 里面填写 key
- 在
(function(){ })
内部添加自定义的 myNavigator
var myNavigator={};
myNavigator.platform="win32";
myNavigator.userAgent="Mozilla/5.0 (Linux; U; Android 4.4.4; Nexus 5 Build/KTU84P) AppleWebkit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30";
myNavigator.appVersion="5.0 (Linux; U; Android 4.4.4; Nexus 5 Build/KTU84P) AppleWebkit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30";
然后用myNavigator
替换掉后面的Navigator
目的是让百度认为你是一个可触控设备
- 替换掉原来的 api 使用本地的 api
<script type="text/javascript" src="http://api.map.baidu.com/api?2.0&ak=xxx"></script>
->
<script type="text/javascript" src="./map.js"></script>
- 如果需要同时支持鼠标和触控
参考链接https://blog.csdn.net/davis_dxs/article/details/82425211
// TODO: 触摸移动时触发此事件 此时开启可以拖动。虽然刚初始化该地图不可以拖动,但是可以触发拖动事件。
map.addEventListener("touchmove", function (e) {
map.enableDragging();
});
// TODO: 触摸结束时触发次此事件 此时开启禁止拖动
map.addEventListener("touchend", function (e) {
map.disableDragging();
});
// 初始化地图 禁止拖动 注:虽禁止拖动,但是可以出发拖动事件
map.disableDragging();
map.enableScrollWheelZoom(true);