Google地图 - 动态输入`google.maps.Map(<dynamic>,地图选项)</dynamic>

时间:2015-01-16 15:57:32

标签: javascript jquery google-maps google-maps-api-3

因此,要制作Google地图,我通常会执行以下操作:

new google.maps.Map(document.getElementById('my-map'), mapOptions);

但我需要一些更灵活的东西,因为现在我在页面上有多个地图。我试过像:

new google.maps.Map($(map).find('.my-map'), mapOptions);

但是我收到了这个错误:

Uncaught TypeError: Cannot set property 'position' of undefined

我已经研究过document.getElementByClassName(),但我不确定如何让它搜索我正在迭代的目标集。因为我正在使用jQuery对象,所以我也不知道是否必须做一些奇怪的事情。

我猜我不能在那里使用jQuery对象。我是API的新手,所以任何帮助都会感激不尽。

2 个答案:

答案 0 :(得分:3)

它必须是一个DOM元素而不是JQuery数组。

new google.maps.Map($(map).find('.my-map')[0], mapOptions);

答案 1 :(得分:0)

瞧,我实际上必须这样做:

var mapElement = map[0].$map.get(0);  
new google.maps.Map(mapElement, mapOptions);