goMap只加载一次

时间:2012-04-23 13:48:22

标签: jquery google-maps-api-3

用户应该能够点击一个链接,该链接将打开一个带有地图的模态。一切正常,但是当您关闭模态并再次单击链接时,模态会打开,但地图不会再次加载。

这是在单击链接时打开模态的jQuery。

$('.mapModal').click(function(){
    var id = $(this).attr('value');
    var address = $('#doc' + id).data('ad');
    $("#map-modal").show();
    $("#modal-map").goMap({
        address: '' + address + ', South Africa',
        zoom: 20
    });
    $.goMap.createMarker({
        address: '' + address + ', South Africa'
    });
});

$('.close').click(function(){
    $("#modal-map").html('');
});

2 个答案:

答案 0 :(得分:0)

goMap正在使用jQuery data()方法将数据项“goMap”添加到您的#modal-map元素中,这使得它认为当您重新显示元素时元素内部仍然存在地图元件。清除元素的html内容时,需要清除该数据项。

替代方法是使用hide()方法来隐藏元素,不要破坏地图内容。

答案 1 :(得分:0)

您需要删除数据(),这很简单 $(“#map-modal”)之后.show();写

$("#map-modal").removeData();
$("#modal-map").goMap({
        address: '' + address + ', South Africa',
        zoom: 20
});

你可以再吃午饭。