Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Google地图标记在通过侦听器事件放置时不显示_Javascript_Google Maps - Fatal编程技术网

Javascript Google地图标记在通过侦听器事件放置时不显示

Javascript Google地图标记在通过侦听器事件放置时不显示,javascript,google-maps,Javascript,Google Maps,剧透警报:我的代码有一个输入错误 下面的代码成功显示初始地图,初始标记位于设置的纬度/经度 当我点击地图时,我试图添加一个侦听器来放置一个新的标记,但似乎什么都没有发生。我尝试在标记上显示InfoWindow,但由于标记没有显示左上角显示的InfoWindow 我正在使用http://maps.googleapis.com/maps/api/js: function initialize() { var mapProp = { center: new google.ma

剧透警报:我的代码有一个输入错误


下面的代码成功显示初始地图,初始标记位于设置的纬度/经度

当我点击地图时,我试图添加一个侦听器来放置一个新的标记,但似乎什么都没有发生。我尝试在标记上显示InfoWindow,但由于标记没有显示左上角显示的InfoWindow

我正在使用
http://maps.googleapis.com/maps/api/js

function initialize() {
    var mapProp = {
        center: new google.maps.LatLng(45.8590, -122.8158),
        zoom: 9,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
    };
    map = new google.maps.Map(document.getElementById('googleMap'), mapProp);
    var marker = new google.maps.Marker({
        position: new google.maps.LatLng(45.8590, -122.8158),
        animation: google.maps.Animation.DROP,
        map: map,
    });
    google.maps.event.addListener(map, 'click', function(event) {
        placeMarker(event.latLng);
    });
    function placeMarker(location) {
        var subMarker = new google.maps.Marker({
            postion: location,
            map: map,
        })
    }
}
google.maps.event.addDomListener(window, 'load', initialize);

我做错了什么?

您在
新标记(…)
中有
位置:
,它应该是
位置


原始答复:

  • 调用函数
    placeMarker(event.latlng)功能位置标记(地图,位置){…}
    ,

  • event.latlng
    应该是
    event.latlng

  • 一种可能的解决方案如下:
    
    google.maps.event.addListener(映射,'click',函数(事件){
    地点标记(地图、事件、板条);
    });
    


    您可以在中看到示例

    您有一个输入错误:
    position
    应该是

    代码片段:

    函数初始化(){
    var mapProp={
    中心:新google.maps.LatLng(45.8590,-122.8158),
    缩放:9,
    mapTypeId:google.maps.mapTypeId.ROADMAP,
    };
    var map=new google.maps.map(document.getElementById('googleMap'),mapProp);
    var marker=new google.maps.marker({
    位置:新google.maps.LatLng(45.8590,-122.8158),
    动画:google.maps.animation.DROP,
    地图:地图,
    });
    google.maps.event.addListener(映射,'click',函数(事件){
    地点标记(事件标记);
    });
    功能位置标记(位置){
    var subMarker=new google.maps.Marker({
    位置:位置,,
    地图:地图,
    });
    }
    }
    google.maps.event.addDomListener(窗口“加载”,初始化)
    
    html,
    身体,
    #谷歌地图{
    身高:100%;
    宽度:100%;
    边际:0px;
    填充:0px
    }
    
    
    很抱歉,这段代码是我尝试过的各种东西的混合体。我将我的问题更新为我使用的实际代码(修复了您注意到的错误)——还有其他想法吗?您在
    新标记(…)
    中有
    position:location
    ,它应该是
    position
    。谢谢你发现了,我快发疯了!