我从MapBox加载了很好的地图,但现在我需要从Wax / ModestMaps获取点击事件。以下代码仅在页面加载时触发回调:
var mapbg, interaction;
var urlBase = 'http://a.tiles.mapbox.com/v3/mteran.house';
// Build baselayer background
wax.tilejson(urlBase + '.jsonp', function(tilejson) {
map = new MM.Map('mymap-bg',
new wax.mm.connector(tilejson));
map.setCenterZoom(new MM.Location(
tilejson.center[1], // latitude
tilejson.center[0]), // longitude
tilejson.center[2]); // zoom level
map.addCallback("drawn", function (map) {
mapbg.setCenterZoom(map.getCenter(), map.getZoom());
});
wax.mm.zoomer(map, tilejson).appendTo(map.parent);
map.setZoomRange(tilejson.minzoom, tilejson.maxzoom);
wax.mm.interaction()
.map(map)
.tilejson(tilejson);
var house = new MM.Location(map.getCenter());
house.on('click', alert(map.getCenter()));
});
答案 0 :(得分:1)
您想要获得什么样的点击事件? The map you're using未启用TileMill interaction,因此我认为这不是目标。如果你想在地图上的任何地方举办点击活动,并弄清楚它是否位于“住宅区”,here's your code expanded to make that happen。
'足够接近'将是必要的,因为就地图而言,点是点;纬度/经度位置非常小,很难点击它们。