Ich habe einen komplexen Fluss, wo ich mouseover Ereignis für jede Polylinie auf der Karte anhängen muss. Der Code für das Ereignis Befestigung ist einfach:Warum mouseover-Ereignis nicht für Polylinie in Google Map senden?
google.maps.event.addListener(polyline, "mouseover", function() {
console.log('event fired');
});
Aber das Ereignis wenige Polylinien ist angebracht und nicht an Dritte weiter. Was könnte der Grund sein?
bearbeiten
Im Folgenden einige weitere Code, der vor dem obigen Code und verwendet für die Definition Linienzug:
this.polyline = new google.maps.Polyline({
path : [fromPosition, toPosition],
strokeColor : '#CCCCCC',
strokeOpacity : 1.0,
strokeWeight : 2
});
var polyline = this.polyline;
bearbeiten 05-Apr-2012
Im Anschluss an die Code, der Probleme verursacht, bitte erklären Sie, warum es passiert und empfehlen Sie eine Lösung. Dank
function Link(from, to) {
this.from = from;
this.to = to;
}
Link.prototype.show = function() {
this.line = new google.maps.Polyline({
path : [this.from, this.to],
strokeColor : "#0000FF",
strokeOpacity : 0.5,
strokeWeight : 6
});
this.line.setMap(map);
google.maps.event.addListener(this.line, 'mouseover', function() {
this.line.setOptions({
strokeOpacity : 1
});
});
google.maps.event.addListener(this.line, 'mouseout', function() {
this.line.setOptions({
strokeOpacity : 0.5
});
});
}
var links = [];
var link2 = new Link(new google.maps.LatLng(-3.5999999999999996, 23.4), new google.maps.LatLng(-4.5, 23.4)), link1 = new Link(new google.maps.LatLng(-3.5999999999999996, 23.4), new google.maps.LatLng(-3.5999999999999996, 18));
links.push(link1);
links.push(link2);
// I've a long list of links, so I'll prefer a loop
for(var i = 0; i < links.length; i++) {
links[i].show();
}
JSFiddle Demo: http://jsfiddle.net/wasimbhalli/9bg6x/
versuchen Sie diese http://lab.gmtplusone.com/go ogle-maps/polyline-click-issue/ –
Können Sie mehr Code posten? Ist die Polylinie global oder im Zusammenhang mit etwas anderem deklariert? – javram
Überlappen sich die Polylinien? Ist das erwartete Verhalten, dass wenn zwei Polylinien überlappen, der Listener für beide Polylinien ausgelöst werden sollte? – javram