17

入力(ミューズスクロールなど)とボタンでユーザーの最大ズームレベルを制限したい。つまり、「maxZoom」をレベル 9 に制限します。しかし、特別な条件で level10 までズームできるようにしたいのです。maxZoom を設定すると、明らかにそれ以上ズームすることはできません。この場合の解決策は何ですか?

4

4 に答える 4

30

最大ズームレベルを設定するには:

map._layersMaxZoom = 15(最大ズームレベルを15に設定します)

同様に、最小ズームレベルを設定できます。

map._layersMinZoom = 2、(最小ズームレベルを2に設定します)。

同じことをする別の方法-

map.options.maxZoom = 15;

map.options.minZoom = 10;

于 2013-02-04T10:04:49.013 に答える
19

map.options.maxZoomこれらの特別な条件でマップの最大ズームレベルを動的に設定し、完了したら元に戻すことができます。

于 2013-01-30T09:31:56.463 に答える
5

これは私のために働く:

L.tileLayer('...', { minZoom: 5, maxZoom: 15 }).addTo(マップ)

于 2014-07-21T17:49:03.557 に答える
2

コントロールを表示しているときにmaxZoomまたはminZoomオプションを変更しても、コントロールは更新されません。たとえば、最小ズーム レベルが 10 で、現在のズーム レベルが 10 の場合、ズーム レベルを変更しても、ズーム アウト コントロールは無効に見えます。

この解決策の 1 つの回避策は、マップ上で「zoomend」イベントをトリガーすることです。

map.options.minZoom = 9;
map.fire('zoomend');

setZoom()現在のズーム レベルを無効にする方法で最大/最小ズーム レベルを変更する場合は、このメソッドを呼び出すことも検討してください。

于 2015-04-22T10:30:23.607 に答える