百度地圖API V2.0 離線版本,支持IE。
發佈於 2016-8-22 ,基於此日期前的最新百度地圖API V2.0。
感謝 於忠達博客 提供的方法。
更新日誌:
2016-09-21 刪除IE下不支持的console.log,修改部分DEMO。
這個是我自己創建的
http://pan.baidu.com/s/1dF2bZAp
前言:
百度地圖API V2.0在線版本擁有非常強大的功能,但是在無網絡的情況下就無能無力了。
本人基於於忠達博客提供的方法改寫了最新版本(2016-8-22之前)的api函數,使得能夠完全脫離網絡運行。並且,地圖的44個模塊實現了按需加載;只需要調用一個load.js即可加載地圖API。
本人仿照官方的demo,將離線能實現的功能都寫了示例代碼供參考。你可以打開baidumap_offline_v2_20160822.js文件查看修改的部分。
請注意,離線版本的api不是萬能的,一些依靠網絡搜索的功能是無法使用的。
主要修改的地方:
1)增加參數bdmapcfg,可自由定義瓦片的後綴,如.png,.jpg;和瓦片的地址;
2)將44個模塊全部下載,支持按需加載;
3)支持一些高級應用,如測距,熱點圖等;
瓦片地圖下載工具:
http://www.xiaoguo123.com/p/mapdownload/
如何使用?
1. 確定你用的瓦片的圖片後綴,如.png, .jpg。修改 baidumap_offline_v2_load.js 中的imgext
var bdmapcfg = {
'imgext':'.jpg', //瓦片圖的後綴 ------ 根據需要修改,一般是 .png .jpg
'tiles_dir':'' //瓦片圖的目錄,爲空默認在 baidumap_v2/tiles/ 目錄
};
2. 確定你用的瓦片的目錄,默認在baidumap_v2/tiles/目錄下,你也可以改成其他地址。修改 baidumap_offline_v2_load.js 中的tiles_dir
3. 參考demo編寫代碼, 要點如下:
1)只需要加載load文件
<script src=”baidumapv2/baidumap_offline_v2_load.js” type=”text/javascript”></script>
2)加載css文件(貌似可不需要)
<link rel=”stylesheet” type=”text/css” href=”../../baidumapv2/css/baidu_map_v2.css”/>
3)定義個放置地圖的容器,並用css控制高度和寬度
<div id=”map_demo”></div>
4)書寫js代碼
<script type=”text/javascript”>
// 百度地圖API功能
var map = new BMap.Map(“map_demo”); // 創建Map實例
map.centerAndZoom(new BMap.Point(116.404, 39.915), 8); // 初始化地圖,設置中心點座標和地圖級別
//map.addControl(new BMap.MapTypeControl()); //添加地圖類型控件 離線只支持電子地圖,衛星/三維不支持
//map.setCurrentCity(“北京”); // 設置地圖顯示的城市 離線地圖不支持!!
map.enableScrollWheelZoom(true); //開啓鼠標滾輪縮放
map.addControl(new BMap.NavigationControl()); //縮放按鈕
</script>
5)享受你的成就