1

私は自分のプロジェクトでopenstreetmapを使用しています。以前はこのプロジェクトでGoogleマップを使用していましたが、リクエストの制限がクライアントのニーズよりも低く、リクエストの制限を増やすためにGoogleが必要とするものを彼は買う余裕がないため、openstreetmapに切り替える必要がありました。 openstreetmap ドキュメントで多くの検索を行っていますが、マップの外にあるリンクからマーカーを開く方法の手がかりが得られません。これを解決するために私を助けてください。これは私にとって大きな助けになります。

前もって感謝します

ねえ、私はそれを自分で解決しました。これは、マップの外側からマーカーのポップアップを開くコードです。

       関数 openMarker(id,lon,lat,html)
       {
        jQuery(".olPopup").remove();
        marklonLat = 新しい OpenLayers.LonLat(lon,lat)
          。変身(
            new OpenLayers.Projection("EPSG:4326"), // WGS 1984 から変換
            map.getProjectionObject() // 球状メルカトル図法へ
        );

        var size = 新しい OpenLayers.Size(200,200);
        popup = new OpenLayers.Popup(id,marklonLat,size,html,true,'' , {keepInMap: true });

        map.addPopup(ポップアップ);
    }

jQuery(".olPopup").remove(); -- これにより、新しいポップアップを開く前に、マップ上のすべてのポップアップが閉じられます

html -- これはポップアップに表示されるコンテンツです

4

1 に答える 1

0

これを試してみてください:

ツールチップに表示するマーカーの一意のID、経度、緯度、およびHTMLを渡します。

関数openMarker(id、lon、lat、html)
    {{
        jQuery( "。olPopup")。remove();
        marklonLat = new OpenLayers.LonLat(lon、lat)
          。変身(
            new OpenLayers.Projection( "EPSG:4326")、//WGS1984から変換
            map.getProjectionObject()//球形メルカトル図法へ
        );

var size = new OpenLayers.Size(200,200); popup = new OpenLayers.Popup(id,marklonLat,size,strhtml,true,'' , {keepInMap: true }); map.addPopup(popup); }

于 2012-04-22T08:19:31.660 に答える