1 回答

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊
首先這個(gè)聚合點(diǎn)的對象每次地圖級別變化或者移動(dòng)地圖,都會(huì)有所變化,在源碼中是走的
MarkerClusterer.prototype._redraw = function () {
this._clearLastClusters();
this._createClusters();
}
MarkerClusterer 這是實(shí)現(xiàn)聚合功能的類,他有很多的屬性和方法,里面有個(gè)_clusters屬性,這個(gè)代表聚合對象集合。
Cluster 這個(gè)是一個(gè)聚合對象類,綁定事件要在他的視圖層綁定,類里面有這個(gè)屬性直接去,你要獲取到聚合對象中的點(diǎn)的數(shù)據(jù)就可以這樣修改下源碼
MarkerClusterer.prototype._redraw = function () {
this._clearLastClusters();
this._createClusters();
var map=this._map;
for(var i=0,cluster;cluster=this._clusters[i];i++){//遍歷所有的聚合點(diǎn)對象
cluster._clusterMarker.onclick=function(){//在每個(gè)聚合點(diǎn)對象的視圖對象上綁定事件
//這樣就可以為每一個(gè)聚合點(diǎn)綁定點(diǎn)擊事件了
}
}
}
添加回答
舉報(bào)