除非点击,否则JqueryUI Google Map不会调整大小

时间:2013-04-05 18:02:05

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

我编写了一个点击功能,可以在点击地图时调整地图的大小和重新定位。

有没有办法让Tab加载时自动运行该功能?这就是功能。

            mapResize = function () {
                var mapFirstClick = false;
                var center = new google.maps.LatLng(32.565243, -97.130531);
                $("#tabs-4").click(function() {
                    mapFirstClick || setTimeout(function() {
                        google.maps.event.trigger(map, 'resize');
                        mapFirstClick = true;
                        map.setCenter(center);
                    }, 250);
                });
            },

您可以通过单击“位置”选项卡查看其在http://l2technotes.dyndns.org的行为方式,地图无法正确加载,但如果您单击地图,则会调整大小并正确重新定位,这会告诉我单击功能正在运行。< / p>

与往常一样,任何指导都会受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

首先:您使用的是jqueryUI 1.10。您在网上找到的大部分资源都是1.8,但是有一些重大变化,例如在1.10中不再有show-event,而是使用activate

    $('#tabs').tabs({
        activate: function (event, ui) {
                    if (ui.newPanel.attr('id') =='tabs-4') {
                      ui.newPanel.click();
                    }
                  }
    });

您可以在此处找到1.10的文档:http://api.jqueryui.com/1.10/tabs/