Javascript 谷歌地图看起来在div中移动了

Javascript 谷歌地图看起来在div中移动了,javascript,jquery,google-maps,google-maps-api-3,Javascript,Jquery,Google Maps,Google Maps Api 3,我在谷歌地图上遇到了问题。我将mapsjs加载到一个文件中,在其中使用ajax和jquery附加一个modal div,其中包含映射。下面的图片就是我得到的: 但是,当我关闭移除div的modal并因此移除map并再次尝试打开它时,出现了一个问题: 除了看起来不完整之外,它看起来像是maps认为它的左上角是div之外的一些像素。我向您保证这一点,因为当我尝试移动地图时,它会刷新其内容,并删除不可见和不幸可见的部分,在本例中是地图的一部分。我在这里留下了我用来显示地图的代码,尽管它非常简单 var

我在谷歌地图上遇到了问题。我将mapsjs加载到一个文件中,在其中使用ajax和jquery附加一个modal div,其中包含映射。下面的图片就是我得到的:

但是,当我关闭移除div的modal并因此移除map并再次尝试打开它时,出现了一个问题:

除了看起来不完整之外,它看起来像是maps认为它的左上角是div之外的一些像素。我向您保证这一点,因为当我尝试移动地图时,它会刷新其内容,并删除不可见和不幸可见的部分,在本例中是地图的一部分。我在这里留下了我用来显示地图的代码,尽管它非常简单

var marker = null, geocoder, latLng, map = null;
geocoder = new google.maps.Geocoder();
latLng = new google.maps.LatLng(41.3865, 2.1648);
var myOptions = {
    zoom: 16,
    center: latLng,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    disableDefaultUI: false
};
if(map === null) {
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

function clearOverlays() {
    if (marker !== null) {
        marker.setMap(null);
        marker = null;
    }
}

function getPosition(address, title) {
    clearOverlays();

    geocoder.geocode({
            address : address,
            region : 'es'
        },
        function (results, status) {
            if (status === google.maps.GeocoderStatus.OK) {
                var result = results[0];
                latLng = result.geometry.location

                marker = new google.maps.Marker({
                    'title': title,
                    'map': map,
                    'position': latLng,
                    'animation': google.maps.Animation.DROP
                });
                map.setCenter(latLng);
            }
        }
    );
}

getPosition(place.address, place.title);

在本例中,我们假设place是一个包含地址和标题的对象,版本2有一个复选框Resize,我记得在这样的情况下使用它,地图会移动中心点。我认为v3的等价物是这样的:


google.maps.event.triggermap,“调整大小”

版本2有一个checkresize,我记得在这样的情况下使用它,地图会移动中心点。我认为v3的等价物是这样的:


google.maps.event.triggermap,“调整大小”

请包括创建map_canvas div的代码,以及可能影响它的css。请包括创建map_canvas div的代码,以及可能影响它的css。嗯,我不知道怎么做,但它工作起来很有魅力。我在setCenter之前添加了这条线,让maps readapt,然后将标记居中,否则它将填充div,但标记不会居中。不管怎么说,我不得不删除掉动画,因为它引起了一些奇怪的效果,我不知道怎么做,但它就像一个魔咒。我在setCenter之前添加了这条线,让maps readapt,然后将标记居中,否则它将填充div,但标记不会居中。无论如何,我必须删除掉掉动画,因为它造成了一些奇怪的效果