私は GWT を使用しており、Google マップを自分の Web サイトに追加しようとしています。google-maps V3 を使用したいので、JSNI を使用しています。私のウェブサイトにマップを表示するには、id="map" で div 要素を作成し、マップの初期化関数で取得する必要があります。私はそうしましたが、うまくいきましたが、Webページ上の場所がおかしいので、コードで作成しているパネルに接続したいです。だから私の質問はどうすればそれを行うことができますか? パネル内で GWT を使用して何らかの方法で div を作成できますか?
次のような新しい HTMLPanel を作成しようとしました。
runsPanel.add(new HTMLPanel("<div id=\"map\"></div>"));
runsPanel は、接続したいパネルです。それでも、次の初期化関数を使用すると、div を取得できません。
private native JavaScriptObject initializeMap() /*-{
var latLng = new $wnd.google.maps.LatLng(31.974, 34.813); //around Rishon-LeTsiyon
var mapOptions = {
zoom : 14,
center : latLng,
mapTypeId : $wnd.google.maps.MapTypeId.ROADMAP
};
var mapDiv = $doc.getElementById('map');
if (mapDiv == null) {
alert("MapDiv is null!");
}
var map = new $wnd.google.maps.Map(mapDiv, mapOptions);
return map;
}-*/;
(アラートをポップします - 「MapDiv is null!」)
何か案は?ありがとう