2017-12-29 33 views
0

私はリーフレットを試していましたが、ディスプレイはGoogle Mapsのようですが、私の要求を満たすことができない方法がたくさんあります。 Webには何か方法はありますか、電話は次のことを示していますか?リーフレットの高さをフルスクリーンで固定

悪い表示:

Bad display.png

それが入力された最初の時間は、画面の外にドラッグすることができます。

グッド表示:

Good display.png

それはそれは非常にフルスクリーンで、ドラッグすることはできません入りは初めて。

答えて

0

地図を初期化するためのLeaflet documentationをご覧ください。あなたがやりたいだろういくつかのオプションを渡すことができます。

var world = new L.LatLngBounds([[90,-180],[-90,180]]);   

var map = L.map('map', { 
    minZoom:2, 
    maxBounds: world, 
    maxBoundsViscosity: 1, 
}).setView([0,0], 0); 

minZoomを設定すると、これまでのマップの上部と下部の両方が表示されていることをズームアウトすることができるというユーザーを停止する(とsetView()に渡されたズーム値を上書きします)。画面の高さに基づいて適切な値を計算する必要があります。また、アプリケーションに表示するにはどのくらいの世界が有益でしょうか。それだけでは、ユーザーはマップの端から離れていても構いません。

設定maxBoundsは、ビューを特定の座標セット(上記の例では世界全体)に制限します。また、ユーザーがこれらの制限を超えて地図をパンできるようにするには、maxBoundsViscosityを設定する必要があります。

ユーザーがマップをまったくパンすることを望まない場合は、dragging: falseも設定できます。これにより、.panTo()メソッドを使用してマップをパンすることができます。

+0

ご協力ありがとうございます、これは私の問題を解決しました。 – hothand

関連する問題