2017-05-29 1 views
0

Ich benutze ein jQuery-Plugin namens jVectorMap. Insbesondere verwende ich diese Karte: http://jvectormap.com/maps/world/world/Umleiten auf eine andere Seite, wenn ich auf ein Land mit jvector Karte klicken

Jedes Land hat eine einzigartige data-code z. ES für Spanien, aber ich kann nicht darauf zugreifen. Zum Beispiel habe ich den folgenden jQuery-Code gemacht:

$('path').on('click', function(){ 
    var country = $(this).data('code'); 
    console.log(country); 
}); 

tut nichts. Hier ist das HTML, also sollte es funktionieren.

<path d="asiunaowifh" data-code="ES" 
fill="#333" fill-opacity="1" stroke="none" 
stroke-width="0" stroke-opacity="1" fill-rule="evenodd" class="jvectormap-region jvectormap-element" 
cursor="pointer"> 
</path> 

keine idee warum nicht? wenn jemand auf die documentation schauen könnte oder einen Rat geben, der großartig sein könnte.

+0

Ein kleiners Arbeitsbeispiel (auf jsfiddle, zum Beispiel) wäre in Ordnung. Ich vermute, dass Sie den Klick binden, bevor das 'Pfad'-Element erstellt wird. Vergewissern Sie sich, dass Sie für den Vorgang verbindlich sind, NACHDEM es im DOM vorhanden ist, damit es nicht funktioniert, aber bis ein Beispiel angezeigt wird. –

+0

Meine jvector map ist anfänglich auf 'display: none' gesetzt, könnte das einen Effekt haben? – Zorgan

+0

Kein Problem mit, dass, solange auf dem DOM ist –

Antwort

1

Wenn Sie in den documentation suchen, gibt es eine spezielle Option für die vectorMap() genannt onRegionClick, die funktioniert:

$('#map').vectorMap({ 
    map: 'world_mill', 
    onRegionClick: function(event, code) { 
     console.log(code); 
    } 
}); 
+0

Ich habe das vermisst, danke, dass das sehr gut funktioniert. – Zorgan

Verwandte Themen