2016-06-12 3 views
2

私は、他のjqvMapカスタムツールチップのトピックは既に回答済みであることを認識していますが、その解決策は私のためには機能しませんでした。ここでjqvカスタムツールチップ

はjQueryのための私の現在のjqvMapコードです:

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!!"; 
       } 
      }, 
    }); 
    }); 

私はしかし、それはちょうど私のツールチップが全体として消えます「onLabelShow」の部分で他のトピックでコードを使用してみました。これに対する解決策はありますか?

ありがとうございます!

リンク: https://github.com/manifestinteractive/jqvmap(jqvMapのドキュメント) Custom Tooltips JQVMap(他のトピック)

答えて

3

ブラウザのコンソールで見てみる場合は、states変数がまったく定義されていないことがわかります。ツールチップが存在しない状態で表示されないようにするには、statesを定義する必要があります。そうでない場合は、最初のif文を削除します。あなたが助けワーキングサンプルHere

希望を見つけることができます

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!!"; 
     } 
    }, 
}); 

onLabelShowが好きにこのことを確認する必要があります。

+1

Ahh参照してください。ありがとう、魅力のように動作します! – DarkTakua

関連する問題