我是 gmaps4rails gem 的忠实粉丝,它运行良好且非常灵活。
但是,我似乎无法轻松清除和更新集群标记,并且在使用此 gem 的 Stackoverflow 上找不到类似的解决方案。
在我的 javascript 中,我使用以下方法过滤掉可见标记。但是 Gmaps.map.clearClusterer 似乎没有响应点击事件。我能够正确显示和隐藏标记,但无法清除群集标记,也无法使用新编号更新群集标记。我应该怎么做?
var VisibleMarker=function(){
var filtered=_.filter(Gmaps.map.markers,function(marker){
return marker.building_type == SELECT;
}); //end of _.filter
return filtered
}//end of VisibleMarker
var applyFilters=function(){
var VisibleArray=VisibleMarker()
_.each(Gmaps.map.markers,function(marker){
Gmaps.map.hideMarker(marker)
})
Gmaps.map.clearClusterer()
_.each(VisibleArray,function(marker){
Gmaps.map.showMarker(marker)
})
Gmaps.map.createClusterer(VisibleArray)
};//end of applyFilters
更新:
我应该如何正确调用 MarkerClusterer 类中的 addMarkers() 方法? http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/reference.html
我用了这条线:
Gmaps.map.addMarkers(VisibleArray)
但它改为调用此函数:
Gmaps4Rails.prototype.addMarkers = function(new_markers) {
this.markers = this.markers.concat(new_markers);
this.create_markers();
return this.adjustMapToBounds();
};