良い一日を。私は JQVmap を使用しています。svg マップにないいくつかの要素をマウスオーバーしているときにツールチップを表示しようとしています。
これは、一部の国が非常に小さいという問題を解決するためのものです。そのため、マップ上にギリシャやシンガポール (たとえば) のツールチップを表示するボタンをいくつか提供したいと考えています。
実際に、jquery.vmap.js でトリガーされるのと同じイベントをトリガーしようとします。
jQuery(params.container).trigger(labelShowEvent, [map.label, code]);
私はこれをやった:
$('#vmap').trigger(labelShowEvent, [tooltipMaker("gr"), "gr"]);
この:
$('#vmap').trigger(jQuery.Event('labelShow.jqvmap'), [tooltipMaker("gr"), "gr"]);
もちろん、運がなければ。
このエラーを受け取った2回目の試行:
Uncaught TypeError: label.html is not a function
だから私はそのパラメータに関数を割り当てることによってそれを解決しようとします:
label.html(tooltipMaker(code));
次のような関数を定義しました。
function tooltipMaker(code){
return '<div class="map-tooltip"><h3 class="header">Country: '+code+' </h3><p class="description">'+code+'</p></div>';
}
しかし、それは何も解決しません。同じ問題を抱えていて、なんとか解決した人はいますか?
最後に、マップで使用されているものと同様のツールチップを作成することもできますが、マップ ロジックを使用したいと思います (ボタンを「本物の」偽の領域として新しいマップを作成するのは非常に困難です)。そして長い)。