gpt4 book ai didi

javascript - 动态谷歌地图集成的问题

转载 作者:行者123 更新时间:2023-11-28 02:53:44 24 4
gpt4 key购买 nike

我在 Chrome 5.0.375.99 中使用 Google map 时遇到了一个非常奇怪的问题:如果您动态创建多个 map 实例,则第二个及以后的 map 实例会出现一个奇怪的错误,它无法正确显示,仅显示在 map 空间的一小部分中。

一些示例页面:
one default - 点击addOne时,新对象出现问题。
none default - 第二次点击addOne时,新对象出现问题。
two default - 两个初始 map 都显示正常,但是当您单击addOne时,新对象出现问题。

真正奇怪的部分是,重新调整窗口大小将强制任何不正确显示的 map 正确显示以自行修复。这让我相信修复它的是重绘事件

最佳答案

Crescent Fresh 是正确的,因为需要在 div 上初始化新 map 之前设置 div 的尺寸。

要在创建 map div 之前设置宽度高度,您可以尝试以下操作:

return this.each(function(){
var jT = $(this),
center = new mAPI.LatLng(options.lat, options.long),
geocoder = new mAPI.Geocoder();

jT.css({
'width': hw[0],
'height': hw[1],
'margin-left': 'auto',
'margin-right': 'auto'
});

jT.data('map', new mAPI.Map(this, $.extend(options, { center: center })));

geocoder.geocode({ address: address }, function(results, status) {
if (status === mAPI.GeocoderStatus.OK && results.length) {
if (status !== mAPI.GeocoderStatus.ZERO_RESULTS) {
jT.data('map').setCenter(results[0].geometry.location);
var dump = new mAPI.Marker({
position: results[0].geometry.location,
map: jT.data('map')
});
return dump;
}
}
});
});

上面的“应该”有效,但还没有测试过

关于javascript - 动态谷歌地图集成的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3196411/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com