我如何向GOOGLE MAPS添加addListener以获取MapType V3
我用
google.maps.event.addListener(map, "maptypechanged", function() {
var newMapType = map.getCurrentMapType();
alert(newMapType);
});
不要提醒
答案 0 :(得分:4)
假设我已经理解正确,我认为您正在寻找的事件实际上称为maptypeid_changed
,而您正在寻找的Map
课程的方法是getMapTypeId
,返回MapTypeId
的实例:
google.maps.event.addListener(map, "maptypeid_changed", function() {
var newMapType = map.getMapTypeId();
alert(newMapType);
});
maptypeid_changed
的文档:
当mapTypeId属性触发此事件 变化。
maptypechanged
事件和getCurrentMapType
方法均来自版本2 API,已被正式弃用。
答案 1 :(得分:0)
您的活动有误!它应该是这样的
google.maps.event.addListener(map, "maptypeid_changed", function() {
var newMapType = map.getMapTypeId();
alert(newMapType);
});
答案 2 :(得分:0)
我不是谷歌地图专家,但乍一看,似乎你没有听到有效的事件。因为(至少通过阅读你的代码)你传递的是Map对象,所以你应该坚持使用有效的Map事件。这里(参见事件表)没有'maptypechanged'事件:
http://code.google.com/intl/it-IT/apis/maps/documentation/javascript/reference.html#Map
也许您想要'maptypeid_changed'事件?
无论如何,addEventListener方法的第一个参数是触发事件的对象。因此,作为第二个参数,您传递一个仅由THAT对象触发的事件。虽然,总是找到关于你传递的对象的文档作为第一个arg(在本例中是Map,但可以是例如Marker对象等等)并查看它触发的确切事件。