0

Jquery ダイアログと Google Maps API V3 を使用して、1 つのページに複数のマップを追加しようとしています。

ここに私のjqueryコードがあります:

function liveTrack_setMap(accountID, deviceID, displayNameOfVehicle) {
    var divtoBeAdded = '<div class="lt_outerDivClass" id="lt_dialog' + deviceID + '" title="Live Track: ' + displayNameOfVehicle + '" > <input type="hidden" /><div class="lt_map" style="height:200px;width;200px;" id="lt_map' + deviceID + '"></div></div>';
    if ($('#lt_dialog' + deviceID).length == 0) {
        $('body').append(divtoBeAdded);
        alert('new Div Added');
    }
    if ($('#lt_dialog' + deviceID).length != 0) {
        $('#lt_dialog' + deviceID).dialog({
            autoOpen: true,
            modal: false,
            resizable: false,
            draggable: true,
            close: function() {
                $(this).dialog('destroy').remove();
            }
        });
    }
    if ($('#lt_map' + deviceID).length != 0) {
        var mapOptions = {
            center: new google.maps.LatLng(-34.397, 150.644),
            zoom: 8,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var map = new google.maps.Map(document.getElementById("lt_map" + deviceID),
            mapOptions);
    }
}

マップを div に適用した後、それを使用して、マップ上の車両の位置を 10 秒ごとに更新します。しかし、問題は、

1) div数が固定されていない

2) マップ オブジェクトは n 個のマップ オブジェクトになる可能性があるため、グローバル変数にすることはできません。

3) マップ オブジェクトは、その div ID ではアクセスできません。

どうすればいいですか?何か案は?助けてください。!

4

1 に答える 1

0

このようなオブジェクトに保存しないのはなぜですか

グローバル変数を宣言します。

var map_object = {}

次に、マップのセットアップ時に:

var index=1;
map_object["map" + index]=new google.maps.......
于 2013-05-02T13:11:36.100 に答える