谷歌地图api标记没有显示

时间:2013-07-07 21:01:17

标签: javascript html api google-maps-api-3

我无法让标记显示在地图上。任何人都可以帮我找出哪些错误会给你带来巨大的帮助吗?

以下是代码:

function initialize() {
    var map_canvas = document.getElementById('map_canvas');
    var myLatlng = new google.maps.LatLng(33.748995, -84.387982);
    var mapOptions = {
        center: myLatlng,
        zoom: 11,
        mapTypeId: google.maps.MapTypeId.TERRAIN
    }
    var map = new google.maps.Map(map_canvas, mapOptions);
    TestMarker();    
}

// Function for adding a marker to the page.
function addMarker(location) {
    marker = new google.maps.Marker({
        position: location,
        map: map
    });
}

// Testing the addMarker function
function TestMarker() {
       Atlanta = new google.maps.LatLng(33.748995, -84.387982);
       addMarker(Atlanta);
}

google.maps.event.addDomListener(window, 'load', initialize);

1 个答案:

答案 0 :(得分:2)

您似乎错过了varmarker变量前面的Atlanta关键字。要解决此问题,我还会在全局空间中的map函数之外声明markerAtlantainitialize()变量,以便其他函数可以访问它们。试试这个:

var map;
var marker;
var Atlanta;

function initialize() {
    var map_canvas = document.getElementById('map_canvas');
    var myLatlng = new google.maps.LatLng(33.748995, -84.387982);
    var mapOptions = {
        center: myLatlng,
        zoom: 11,
        mapTypeId: google.maps.MapTypeId.TERRAIN
    };
    map = new google.maps.Map(map_canvas, mapOptions);
    TestMarker();    
}

// Function for adding a marker to the page.
function addMarker(location) {
    marker = new google.maps.Marker({
        position: location,
        map: map
    });
}

// Testing the addMarker function
function TestMarker() {
       Atlanta = new google.maps.LatLng(33.748995, -84.387982);
       addMarker(Atlanta);
}

google.maps.event.addDomListener(window, 'load', initialize);