Переменное количество карт Google на одной странице - PullRequest
0 голосов
/ 24 октября 2011

Я загружаю несколько карт Google внутри страницы, используя ajax.Они генерируются динамически, различаются по количеству карт, отображаемых на странице.Я нашел частичное решение моей проблемы здесь .

Моя проблема с решением состоит в том, что у меня нет фиксированного количества карт.Есть ли способ динамически генерировать имена переменных, в которых хранятся объекты карты (map1, map2 и т. Д.)?Есть ли лучшее решение, которое не включает генерацию имен переменных?

1 Ответ

0 голосов
/ 24 октября 2011

Да. Используйте массивы в JavaScript. Примерно так:

    var mapObjects;

    function geAllMapDivs() {
        var allDivs = document.getElementsByTagName('DIV'), i, L;
        var mapDivs = [];
        for(i=0, L=allDivs.length; i<L; i++) {
            if (allDivs[i].id.substring(0,4) == "map_") {
                mapDivs.push(allDivs[i]);
            }
        }
        return mapDivs;
    }

    function createMaps() {
        var mapDivs = getAllMapDivs(), i, L;
        mapObjects = [];
        for(i=0, L=mapDivs.length; i<L; i++) {
            mapObjects.push(new google.maps.Map(mapDivs[i], myOptions)); 
        }
    }
...