-1

Also habe ich Google Map mit initialize() -Funktion gemacht und ich will es mit addMarker() -Funktion Marker zeichnen, aber sie nicht sichtbar, so dass ich sie später sichtbar machen können. Aber wenn ich setzeVisible: false in neuen google.maps.Marker() es beide zeigen, und wenn ich es auf wahr setzen, zeigt es mir nur eine von ihnen. Wie?setVisible auf Google Map Marker

hier ist mein Code:

<!DOCTYPE html> 
    <html> 
     <head> 
    <script src="http://maps.googleapis.com/maps/api/js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
<script> 
    //varijable 
    var restorani = [ 
     ['restoran 1',45.158457,18.0158902,'Prvi'], 
     ['restoran 2',45.159457,18.0158902,'Drugi'] 
    ]; 

    var myCenter=new google.maps.LatLng(45.159457,18.0158902); 
    var map; 
    var i; 
//initialize 
    function initialize() { 
     var mapProp = { 
     center:new google.maps.LatLng(45.159457,18.0158902), 
     zoom:13, 
     mapTypeId:google.maps.MapTypeId.ROADMAP 
     }; 
     map=new google.maps.Map(document.getElementById("map"),mapProp); 
    for(i=0;i<2;i++){ 
    addMarker(restorani[i]); 

    } 

    } 

google.maps.event.addDomListener(window, 'load', initialize); 
//adding markers  
    function addMarker(marker) { 
    var category = marker[0]; 
    var titl= marker[3]; 
    var pos = new google.maps.LatLng(marker[1], marker[2]); 
    var marker = new google.maps.Marker({ 
     position: pos, 
     category: category, 
     map: map, 
     title: titl, 
     setVisible:false //!!!!!!!!!!!!!!!!!! 

    }); 
} 



    </script> 
    </head> 
<style> 
      #map { 
       width: 700px; 
       height: 400px; 
       float:right; 
       border:2px solid black; 
      } 
    </style> 
    </head> 

     <body> 
     <div id="map"></div> 
     </body> 
    </html> 

Antwort

0

Die property name ist visible, nicht setVisible

function addMarker(marker) { 
    var category = marker[0]; 
    var titl= marker[3]; 
    var pos = new google.maps.LatLng(marker[1], marker[2]); 
    var marker = new google.maps.Marker({ 
    position: pos, 
    category: category, 
    map: map, 
    title: titl, 
    visible:false 
}); 

Code-Schnipsel:

//varijable 
 
var restorani = [ 
 
    ['restoran 1', 45.158457, 18.0158902, 'Prvi'], 
 
    ['restoran 2', 45.159457, 18.0158902, 'Drugi'] 
 
]; 
 

 
var myCenter = new google.maps.LatLng(45.159457, 18.0158902); 
 
var map; 
 
var i; 
 
//initialize 
 
function initialize() { 
 
    var mapProp = { 
 
    center: new google.maps.LatLng(45.159457, 18.0158902), 
 
    zoom: 13, 
 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
 
    }; 
 
    map = new google.maps.Map(document.getElementById("map"), mapProp); 
 
    for (i = 0; i < 2; i++) { 
 
    addMarker(restorani[i]); 
 

 
    } 
 
} 
 

 
google.maps.event.addDomListener(window, 'load', initialize); 
 
//adding markers  
 
function addMarker(marker) { 
 
    var category = marker[0]; 
 
    var titl = marker[3]; 
 
    var pos = new google.maps.LatLng(marker[1], marker[2]); 
 
    var marker = new google.maps.Marker({ 
 
    position: pos, 
 
    category: category, 
 
    map: map, 
 
    title: titl, 
 
    visible: false 
 

 
    }); 
 
} 
 
google.maps.event.addDomListener(window, "load", initialize);
#map { 
 
    width: 700px; 
 
    height: 400px; 
 
    float: right; 
 
    border: 2px solid black; 
 
}
<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry"></script> 
 
<div id="map"></div>