OpenLayers マップで確立された「moveend」リスナーがあります。マップをパンまたはズームすると、リスナーが期待どおりに起動します。このアプリでは、ズームと中心の位置をプログラムで変更する必要もありますが、「moveend」リスナーを起動すると発生します。OpenLayers でユーザー主導のビュー変更とプログラムによるビュー変更を区別することは可能ですか?
JavaScript OpenLayers バージョン 2.12 を使用しています。
OpenLayers マップで確立された「moveend」リスナーがあります。マップをパンまたはズームすると、リスナーが期待どおりに起動します。このアプリでは、ズームと中心の位置をプログラムで変更する必要もありますが、「moveend」リスナーを起動すると発生します。OpenLayers でユーザー主導のビュー変更とプログラムによるビュー変更を区別することは可能ですか?
JavaScript OpenLayers バージョン 2.12 を使用しています。
また、プログラムで地図をズームまたは移動するときに、いくつかの変数をtrueに設定できます。
リスナーで、その変数を確認します。それが本当なら、地図はプログラムで動かされます。確認後、falseに戻します。
区別する方法はないと思います。しかし、これがあなたにできることです。プログラムでズームしたり、中心の位置を変更したりする場合は、moveendイベントの登録を一時的に解除し、後で再登録できます。
map.events.unregister( "moveend"、map、function); 。。プログラムでズームします。。map.events.register( "moveend"、map、function);