如何在谷歌地图标记中添加地址?

4

我的HTML代码是这样的:

<a href="#" class="button" data-latLng="53#separator#-1.33#separator#Address 1">Button 1</a>
<a href="#" class="button" data-latLng="-34.397#separator#150.644#separator#Address 2">Button 2</a>
<div id="map-canvas"></div>

我的JavaScript代码如下:
$(document).on("click", ".button", function(e) {
    e.preventDefault();
    var latLng = $(this).attr("data-latLng");           
    initialize(latLng);

    function initialize(latLng) {
        console.log(latLng);
        latLng = latLng.split("#separator#");
        address = latLng[2];
        console.log(address);
        var map;        
        var myCenter=new google.maps.LatLng(latLng[0],latLng[1]);
        var marker=new google.maps.Marker({
            position:myCenter
        });

        var mapProp = {
            center: myCenter,
            zoom: 14,
            mapTypeId:google.maps.MapTypeId.ROADMAP
        };

        map=new google.maps.Map(document.getElementById("map-canvas"),mapProp);
        marker.setMap(map);

        ...
    };
    ...
});

这是演示内容: https://jsfiddle.net/oscar11/b0ahcLxw/ 我想在谷歌地图标记中显示地址,但我还很困惑。所以当点击按钮时,地图会自动在标记上显示地址。
有什么解决办法来解决我的问题吗?
非常感谢。
2个回答

7

您没有声明infowindowcontentString变量。 因此,您需要声明infowindow变量,如下所示:

var infowindow = new google.maps.InfoWindow();

同时声明contentString

var contentString ="Your Content String";

编辑:

// Add this line
var contentString ="Your Content String";
google.maps.event.addListener(marker, 'click', function() {
    // Add this line
    var infowindow = new google.maps.InfoWindow();
    infowindow.setContent(contentString);
    infowindow.open(map, marker);
}); 

JsFiddle 示例
自动显示信息窗口 JsFiddle 演示


1
谢谢回答我的问题。但是我想要的是,在不点击标记的情况下自动显示地址。因此,当点击按钮时,地图会自动直接在标记上显示地址。 - moses toh
我需要你的帮助。请看这里:http://stackoverflow.com/questions/37209847/how-to-send-parameter-json-array-when-modal-open - moses toh

0

添加这一行,并在hellooo的位置设置您的内容。

google.maps.event.addListener(marker, 'click', function() {
var infowindow = new google.maps.InfoWindow();
infowindow.setContent("hellooo");
infowindow.open(map, marker);

}); 

否则你可以在这里找到JsFiddle

如果想要从经纬度获取地址,你可以使用反向地理编码。你可以在这里找到示例代码,试一下吧反向地理编码


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接