Я не могу понять, почему это не работает. карты не загружены - PullRequest
0 голосов
/ 22 декабря 2011

Я уверен, что у меня все в порядке.Можете ли вы проверить это для меня.в консоли выдается следующее сообщение об ошибке: «Uncaught Error: значение 0 неверно для функции (переведено с другого языка)»

function map_load() {
    var draw;

    var coords = Array(23.078412614088098, 57.33448100333726,
23.07858534246487, 57.33415377383744, 
23.078234950383354, 57.33415913825547, 
23.078190534420507, 57.334582927279826, 
23.07792403833525, 57.3352266574434);

    var s = -2;
    var triangleCoords = [];
    var coords_num = coords.length/2;

    for (i = 0; i < coords_num ; i++) {
        s += 2;
        triangleCoords[i] = google.maps.LatLng(coords[s],coords[s+1]);
    }

    var center1 = google.maps.LatLng(coords[0], coords[1]);

if (coords.length > 1) {
    draw = new google.maps.Polygon({
        paths: triangleCoords,
        strokeColor: "#FF0000",
        strokeOpacity: 0.8,
        strokeWeight: 2,
        fillColor: "#FF0000",
        fillOpacity: 0.35
    });
} else {
    draw = new google.maps.Marker({
        position: triangleCoords,
        title:"your item location"
    });
}

    var myOptions = {
      zoom: 16,
      center: center1,
      panControl:false,
      streetViewControl:false,
      mapTypeId: google.maps.MapTypeId.HYBRID
    };

    var map = new google.maps.Map(document.getElementById("map"), myOptions);
    draw.setMap(map);
}

1 Ответ

1 голос
/ 22 декабря 2011

Вы сделали одну и ту же ошибку дважды, упустив слово «new» для создания ваших объектов LatLng.

 triangleCoords[i] = google.maps.LatLng(coords[s],coords[s+1]);

должно быть

 triangleCoords[i] = new google.maps.LatLng(coords[s],coords[s+1]);

Также происходит в центре1

var center1 = google.maps.LatLng(coords[0], coords[1]);

должно быть

var center1 = new google.maps.LatLng(coords[0], coords[1]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...