近期一個項目用到百度地圖,由於客戶那里是內網,所以要把百度地圖改為離線。但是百度地圖並不支持離線,官網也沒有離線js下載,於是網上找到大神寫的的百度地圖離線版Demo(傳送門),這個js請求瓦片圖的風格有點像Restful,而百度的請求瓦片圖是用url參數,更像是百度寫了一個接口,根據這些url參數返回指定的圖片。大神寫的demo可用,下面做一點改進,把瓦片圖資源和web項目分離。
1.用全能地圖下載器下載好瓦片圖拷貝到titles里面,然后在tomcat的webapps下面新建一個靜態項目bdmap,把四個文件夾考進去。
2.打開js文件夾下apiv2.0.js,找到Uc.getTilesUrl = function(a, b, c) ,並在return中加入瓦片圖的請求路徑,這樣就可以請求到瓦片圖。
3.找z.ma = z.url.proto,在下面一行改為
4.搜索js/getmodules.js,改為url路徑
5.搜索if (/^http/.test(a)) return;並注釋掉。有這行貌似getmodules.js就不進行加載。
6.把html中引用的css和js改為服務器的
7.訪問一下,大功告成。(傳送門)