我在div上设置了谷歌地图(api v3)。 然后我想通过div检索地图。
做类似
的事情theMap = $('.myDiv').theGoogleMap;
我找不到这个简单的信息。谢谢你的帮助。
答案 0 :(得分:2)
好吧,你不能这样做,你可以声明一个全局变量并在该变量中保存对地图对象的引用。请查看Google文档中的示例。
var map;
function initialize() {
var myOptions = {
zoom: 8,
center: new google.maps.LatLng(-34.397, 150.644),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map_canvas'),
myOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
这里还有一个Javascript教程:
答案 1 :(得分:2)
对于原版海报来说,这可能为时已晚,但可能对其他人有帮助。在我自己解决之前,我也花了一些时间进行搜索。结果很简单。
假设持有地图的div看起来像这样:
<div id="myMap"></div>
创建地图时,将地图对象的引用添加为包含地图的文档元素的属性:
// Create the map
originalMapObject = new google.maps.Map('myMap', map_options);
// Get the DOM Element
var element = document.getElementById('myMap');
// Create a random property that reference the map object
element.gMap = originalMapObject;
当你再次需要地图对象时,只需做这样的事情
gmap = document.getElementById('myMap').gMap
希望它有所帮助。
答案 2 :(得分:0)
API无法正常运行。您必须在创建javascript时保留对该对象的引用。您无法从DOM引用中查找地图对象。