2013-02-27 8 views
8

Ho un problema su gmaps v0.3 che quando aggiungoMarker Come lasciare aprire InfoWindow. non quando apri l'apertura.Come auto aprire infoWindow in gmaps v0.3

<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); 
}); 

voglio quando addMarker automobile aperta infowindow non scatta, che cosa devo fare. per favore aiutatemi.

+0

ciò che è "Inserire il codice qui"? Si prega di inviare la funzione completa. – Marcelo

+0

Siamo spiacenti! Ho modificato, è il codice finale, ora. cosa devo fare – daiguachen

risposta

14

È possibile aprire l'infowindow utilizzando la funzione .open:

// 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); 

Si può leggere su infowindow presso il sito web di Google Maps https://developers.google.com/maps/documentation/javascript/overlays#InfoWindows

+0

lo provo e non ho marcatore sulla mappa. ora, il codice può essere eseguito, ma voglio mostrare infoWindow quando il programma è in esecuzione, non mostrare infoWindow dopo aver fatto clic sul marker – daiguachen

+0

Ho aggiornato la mia risposta. Fammi sapere se funziona –

+2

formami questo non funziona ... – kampageddon

6

Ogni marcatore aggiunto alla intance Gmaps.map ha il proprio InfoWindow memorizzato nell'oggetto Markers. Abbiamo bisogno della chiave dell'indice Array per quel marcatore specifico. Indirizzo dalla chiave dell'indice è aperto l'InfoWinow corretto. È possibile aprire il marcatore specifico GMaps.js facendo seguente:

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

sostituire [index] dall'indice del marcatore si desidera che l'InfoWindow per aprire.

3

utilizzare gli eventi da google.maps.Marker ('Events' section)

esempio:

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(); 
    } 
}); 
Problemi correlati