簡體   English   中英

如何在不使用dijit的情況下更改buttonclick上的地圖縮放級別?

[英]How to change map zoomlevel on buttonclick without using dijit?

我正在使用esri javascript API創建網絡地圖。 我想在地圖旁邊有一個按鈕,以允許我放大/縮小(不是標准的esri按鈕)。 現在,我發現了許多使用dijit( https://developers.arcgis.com/javascript/jssamples/toolbar_navigation.html )進行此操作的示例,但我只想使用一個簡單的html按鈕,例如:放大然后在腳本中像這樣說:

函數zoomin(){map.setZoom()}

現在我的問題是我不知道如何進行這項工作。 我猜是問題在於,在buttonclick之后,它無法找到zoomin函數,因為它位於require([...]),function(){}之內,但是我不能將其放在外面,因為代碼取決於要求。

因此,如果您能告訴我該怎么辦,那就太好了。

要在地圖上放大,請使用setZoom方法,將當前縮放級別遞增以放大,而減小則以縮小。 例如:

//zoom out:
map.setZoom(map.getZoom()-1);

//zoom in:
map.setZoom(map.getZoom()+1);

例如,使用上面的Esri示例的沙箱: http : //developers.arcgis.com/javascript/sandbox/sandbox.html? sample= toolbar_navigation

...將第85行替換為91:

      registry.byId("zoomin").on("click", function () {
        //navToolbar.activate(Navigation.ZOOM_IN);
        map.setZoom(map.getZoom()+1);
      });

      registry.byId("zoomout").on("click", function () {
        //navToolbar.activate(Navigation.ZOOM_OUT);
        map.setZoom(map.getZoom()-1);
      });

這將允許“放大”和“縮小”按鈕來控制地圖。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM