2011-11-20 15 views
22
var image = 'bullets/_st_zzzzzzl SSS.gif'; 

var bar1 = new google.maps.Marker({ 
    position: myLatLng, 
    map: map, 
    icon: image, 
    title: "bar number 1"  
}); 

    google.maps.event.addListener(bar1, 'mouseover', function() { 
     infowindow.open(map,bar1); 
    }); 

    google.maps.event.addListener(bar1, 'mouseout', function() { 
     infowindow.close(map,bar1); 
    }); 

अब माउसओवर पर जब मैं आइकन को दूसरी छवि में बदलना चाहता हूं तो मुझे मिल गया। मैंने कुछ टिप्स और कुछ कोड की कोशिश की लेकिन कुछ भी काम नहीं करता ... आपकी मदद की सराहना करेंमाउसओवर (गूगल मैप्स वी 3) पर मार्कर आइकन बदलें

उत्तर

53

marker.setIcon() फ़ंक्शन का उपयोग करें। बाकी लगभग उद्घाटन रूप में ही है/अपने कोड में infowindow बंद करने:

var icon1 = "imageA.png"; 
var icon2 = "imageB.png"; 

var marker = new google.maps.Marker({ 
    position: myLatLng, 
    map: map, 
    icon: icon1, 
    title: "some marker" 
}); 

google.maps.event.addListener(marker, 'mouseover', function() { 
    marker.setIcon(icon2); 
}); 
google.maps.event.addListener(marker, 'mouseout', function() { 
    marker.setIcon(icon1); 
}); 

ध्यान दें कि setIcon() समारोह में छवि रास्तों का उपयोग कर के अलावा, आप भी google.maps.MarkerImage वस्तुओं, जो बहुत उपयोगी होते हैं का उपयोग कर सकते हैं, तो आप उपयोग करना चाहते हैं, खासकर अगर छवि sprites।

+0

यह मेरे लिए बहुत अच्छा काम करता है! – Avishai

+0

क्या आप स्प्राइट के लिए समाधान प्रदान कर सकते हैं। मैं माउसओवर पर आइकन मूल बदलने के लिए 'setIcon() 'का उपयोग करने का प्रयास करता हूं और यह काम नहीं करता है – sgromskiy

-1
google.maps.event.addListener(marker, 'mouseover', function() { 
    infowindow.open(map, this); 
}); 

// assuming you also want to hide the infowindow when user mouses-out 
google.maps.event.addListener(marker, 'mouseout', function() { 
    infowindow.close(); 
}); 
संबंधित मुद्दे