2016-06-12 8 views
2

Ich weiß, dass die anderen benutzerdefinierten Tipps zu jqvMap bereits beantwortet wurde, aber diese Lösung hat nicht für mich funktioniert.jqvMap Benutzerdefinierte Tooltips

Hier ist mein aktueller jqvMap Code für jQuery:

jQuery(document).ready(function() { 
    jQuery('#vmap').vectorMap({ 
     map: 'usa_en', 
     enableZoom: true, 
     showTooltip: true, 
     selectedColor: null, 
     hoverColor: null, 
     backgroundColor: '#fffff', 
     colors: { 
     fl: '#016ea1', 
     ma: '#016ea1', 
     md: '#016ea1', 
     wa: '#016ea1', 
     mn: '#016ea1', 
     ny: '#016ea1', 
     wi: '#016ea1', 
     hi: '#016ea1', 
     vt: '#016ea1', 
     nv: '#016ea1', 
     ia: '#016ea1', 
     ca: '#016ea1', 
     or: '#016ea1', 
     nj: '#016ea1', 
     }, 
onRegionClick: function(element, code, region) 
{ 
     window.location = 'http://google.com/' + region; 

}, 
      onLabelShow: function(event, label, code) { 
       if (states.toLowerCase().indexOf(code) <= -1) { 
        event.preventDefault(); 
       } else if (label[0].innerHTML == "Colorado") { 
        label[0].innerHTML = label[0].innerHTML + " - The state where I live!!"; 
       } 
      }, 
    }); 
    }); 

ich auf dem anderen Thema des Code versucht, mit mit „onLabelShow“ Teil aber es macht meinen Tooltips als Ganze verschwinden. Irgendwelche Lösungen dazu?

Danke!

Links: https://github.com/manifestinteractive/jqvmap (jqvMap Dokumentation) Custom Tooltips JQVMap (anderes Thema)

Antwort

3

Wenn Sie einen Blick in Ihrem Browser Konsole nehmen werden Sie sehen, dass states Variable nicht definiert ist. Wenn Sie verhindern möchten, dass QuickInfo in nicht vorhandenen Zuständen angezeigt wird, müssen Sie states definieren. Wenn nicht, entfernen Sie einfach die erste if -Anweisung. die onLabelShow sollte diese aussehen mag:

onLabelShow: function(event, label, code) { 
     states =["fl","ma","md","wa","mn","ny","wi","hi","vt","nv","ia","ca","or","nj"]; 
     if (states.indexOf(code) <= -1) { 
      event.preventDefault(); 
     } else if (label[0].innerHTML == "Florida") { 
      label[0].innerHTML = label[0].innerHTML + " - The state where I live!!"; 
     } 
    }, 
}); 

Sie können eine Arbeitsprobe Here

Hoffnung, dass Hilfe.

+1

Ahh ich sehe. Danke, funktioniert wie ein Charme! – DarkTakua