Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 当可见性最初设置为“隐藏”时,Google地图无法正确渲染_Jquery_Google Maps_Animation_Google Maps Api 3 - Fatal编程技术网

Jquery 当可见性最初设置为“隐藏”时,Google地图无法正确渲染

Jquery 当可见性最初设置为“隐藏”时,Google地图无法正确渲染,jquery,google-maps,animation,google-maps-api-3,Jquery,Google Maps,Animation,Google Maps Api 3,我在一个动画网站中插入了谷歌地图,该网站必须使用jquery的显示:隐藏属性和滑动效果,但地图不能正确显示。你会发现地图偏离了中心。请帮忙 编辑:下面的代码经过编辑,现在可以正确显示,这多亏了Salman,但现在它不再显示在标记的中心。map.setCentermyLatlng也不起作用 您可以在html代码中使用此地图 您可以在html代码中使用此地图………您需要在实际显示地图时触发地图调整大小事件 $('#link2').on('click',function(){ $('.sli

我在一个动画网站中插入了谷歌地图,该网站必须使用jquery的显示:隐藏属性和滑动效果,但地图不能正确显示。你会发现地图偏离了中心。请帮忙

编辑:下面的代码经过编辑,现在可以正确显示,这多亏了Salman,但现在它不再显示在标记的中心。map.setCentermyLatlng也不起作用

您可以在html代码中使用此地图


您可以在html代码中使用此地图………

您需要在实际显示地图时触发地图调整大小事件

$('#link2').on('click',function(){
    $('.sliderViewer').animate({left: -300}, 1000);
    google.maps.event.trigger(map, 'resize')
})
但是,除非将map变量设置为全局变量,否则这将不起作用。所以你可以这样开始:

var map;
function initialize() {
    // init codes
    map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);

在实际显示地图时,需要触发“地图大小调整”事件

$('#link2').on('click',function(){
    $('.sliderViewer').animate({left: -300}, 1000);
    google.maps.event.trigger(map, 'resize')
})
但是,除非将map变量设置为全局变量,否则这将不起作用。所以你可以这样开始:

var map;
function initialize() {
    // init codes
    map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);

这太棒了,因为地图现在显示正确,但现在地图不在我放在“myLatLang”变量上的指针的中心,如果在调整大小后调用map.setCenter,应该可以。谢谢,但这仍然不起作用。我编辑了原始帖子以考虑您的更改。您没有将任何参数传递给setCenter。您需要传递一个LatLng对象。我已将myLatlng变量设置为全局变量,并将代码更改为:myMap.setCentermyLatlng;然而,这仍然不起作用。我做错了什么???这很好,因为地图现在显示正确,但现在地图不在我放在“myLatLang”变量上的指针的中心,如果在调整大小后调用map.setCenter,应该可以。谢谢,但这仍然不起作用。我编辑了原始帖子以考虑您的更改。您没有将任何参数传递给setCenter。您需要传递一个LatLng对象。我已将myLatlng变量设置为全局变量,并将代码更改为:myMap.setCentermyLatlng;然而,这仍然不起作用。我做错了什么???我不想用这个,因为你不能自定义指针。我可能会把这当作最后的手段。谢谢我不想使用这个,因为你不能自定义指针。我可能会把这当作最后的手段。谢谢
google.maps.event.addListenerOnce(map, 'tilesloaded', function() {
    google.maps.event.addListenerOnce(map, 'tilesloaded', function() {
            google.maps.event.trigger(map, 'resize');

    });
});