0
1

Leafletで後から操作を無効化する方法

Posted at

Googleで「leaflet 操作 無効化」等で検索しても、さくっと見つからなかったので自分用メモを兼ねて。

はじめに

Leafletは、JavaScriptで地図APIを呼び出すための高機能なライブラリである。基本的には、ユーザーが地図を自由に移動できるよう作られているが、場合によっては、地図を固定したい(操作を禁止したい)場合もあるだろう。

移動させないことを前提として、地図を読み込みたいならば、例えば以下の記事のように、L.mapへオプションを渡せば解決する。

しかし、特定の条件を踏んだ時にのみ、操作を禁止するという場合はどのようにすればよいのだろうか。

結論

const mymap=L.map("your_map_div_id")とした上で、以下の関数を呼び出すと良い。

index.js
function map_control_disable(){
    //ドラッグやズーム等、すべてを禁止する
    mymap.dragging.disable();
    mymap.touchZoom.disable();
    mymap.scrollWheelZoom.disable();
    mymap.doubleClickZoom.disable();
    mymap.boxZoom.disable();
    mymap.tapHold.disable();
    mymap.keyboard.disable();
    mymap.zoomControl.disable();
}

 

以上。

 

参考文献

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1