2017-07-17 12 views

答えて

0

私が何を求めていることjVectorMapによって提供される標準的な機能のいくつかでも実現することができると信じています。以下の例では、テキサス以外の米国のすべての地域を選択することができます。これにより、通常のマルチマップドリルダウンはUS-TXのためだけに実行されます。

$(document).ready(function() { 
    new jvm.MultiMap({ 
    container: $('#map'), 
    maxLevel: 1, 
    main: { 
     map: 'us_lcc', 
     regionsSelectable: true, 
     regionStyle: { 
     selected: { 
      fill: 'green' 
      } 
     }, 
     onRegionClick: function(event, code) { 
      if(code == "US-TX") { 
      return false; 
      } else { 
      event.stopImmediatePropagation(); 
      } 
     } 
     } 
    }); 
}); 

説明:ドキュメントがhere言うよう

、マルチマップオブジェクトの主な地図は、「通常」の地図と同じように構成することができます。

マルチマップonRegionClickハンドラの内部では、falseを返すことで領域の選択を回避でき、stopImmediatePropagation()を呼び出してドリルダウンを停止できます。 jVectorMapバージョン2.0.2でこのスニペットをテストしましたが、最新のバージョンでも動作するはずです。

ところで、偉大なjVectorMapためbjorndに感謝。

+0

クールアドバイス私は 'stopPropagation'でイベントを止めようとしましたが、それはうまくいかなかったので、あなたの解決策はとてもクリアで簡単です。 – Iworb

0

これに到達するための標準的な動作はありません。

は、これを処理するために、私は MultiMapファイルを変更する必要がありました。 addMap関数では、 ハードコードチェックリージョンコードを追加したり、設定に追加してドリルダウンをパスまたは拒否することができます。

関連する問題