9

我有一个关于 gmaps v0.3 的问题,当我 addMarker 如何让 infoWindow 自动打开时。不是当您单击打开时。

<script type="text/javascript">
var map;
$(document).ready(function(){
    map = new GMaps({
        div: '#map',
        lat: 39.908403,
        lng: 116.397529,
        zoom: 1,
    });
    var marker = new google.maps.Marker();
    marker = {
        lat: 39.908403,
        lng: 116.397529,
        title: 'Lima',
        //map: map.map,
        //animation: google.maps.Animation.BOUNCE,
        //shape: {coords: [0,0,50,50], type: "rect"},
        infoWindow: {
          content: '<font color="red">hello world</font>'
        }
    }
    map.addMarker(marker);
 });

我想当 addMarker 自动打开 infoWindow 没有点击时,我该怎么办。请帮我。

4

3 回答 3

16

您可以使用以下.open函数打开 infoWindow:

// Create map
var map = new GMaps({
    div: '#map',
    lat: 39.908403,
    lng: 116.397529,
    zoom: 1,
});

// Create infoWindow
var infoWindow = new google.maps.InfoWindow({
    content: 'Content goes here..'
});

// Create marker
var marker = new google.maps.Marker({
    lat: lat,
    lng: lng,
    title: 'Lima',
    map: map.map,
    infoWindow: infoWindow
});

// This opens the infoWindow
infoWindow.open(map, marker);

您可以在 Google 地图网站https://developers.google.com/maps/documentation/javascript/overlays#InfoWindows上阅读有关 infoWindow 的信息

于 2013-02-27T08:47:41.523 回答
6

添加到 Gmaps.map 实例的每个标记都有自己的 InfoWindow 存储到标记对象中。我们需要该特定标记的数组索引键。地址按索引键右边的InfoWinow o 被打开。您可以通过执行以下操作打开 GMaps.js 特定标记:

(map.markers[index].infoWindow).open(map.map,map.markers[index]);

将 [index] 替换为您希望 InfoWindow 打开的标记的索引。

于 2014-09-14T12:48:26.847 回答
4

使用来自google.maps.Marker 的事件(“事件”部分)

例子:

map.addMarker({
    lat: 50.17222520000001,
    lng: 12.196652600000002,
    infoWindow: {
        content: '<p>Foobar</p>'
    },
    mouseover: function(){
        (this.infoWindow).open(this.map, this);
    },
    mouseout: function(){
        this.infoWindow.close();
    }
});
于 2015-03-18T00:46:20.307 回答