Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用dijit的情况下更改按钮上的地图缩放级别?_Javascript_Function_Button_Buttonclick_Arcgis Js Api - Fatal编程技术网

Javascript 如何在不使用dijit的情况下更改按钮上的地图缩放级别?

Javascript 如何在不使用dijit的情况下更改按钮上的地图缩放级别?,javascript,function,button,buttonclick,arcgis-js-api,Javascript,Function,Button,Buttonclick,Arcgis Js Api,我正在使用esri javascript API创建一个网络地图。我想在地图旁边有一个按钮,允许我放大/缩小(不是标准的esri按钮)。现在,我发现了很多使用dijit()的例子,但我只想使用一个简单的html按钮,比如:放大,然后在脚本部分说: 函数zoomin(){map.setZoom()} 现在我的问题是,我不知道如何让它起作用。我想问题是,在单击按钮之后,它找不到zoomin函数,因为它位于require([…])、function(){}的内部,但我也不能将它放在外部,因为代码取决于

我正在使用esri javascript API创建一个网络地图。我想在地图旁边有一个按钮,允许我放大/缩小(不是标准的esri按钮)。现在,我发现了很多使用dijit()的例子,但我只想使用一个简单的html按钮,比如:放大,然后在脚本部分说:

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

现在我的问题是,我不知道如何让它起作用。我想问题是,在单击按钮之后,它找不到zoomin函数,因为它位于require([…])、function(){}的内部,但我也不能将它放在外部,因为代码取决于require


因此,如果您能告诉我该怎么做,那就太好了。

要放大地图,请使用setZoom方法增加当前的缩放级别以放大,减少以缩小。例如:

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

//zoom in:
map.setZoom(map.getZoom()+1);
例如,使用上述Esri样本的沙箱:

…将第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);
      });
这将允许放大和缩小按钮控制地图


希望这有帮助。

不,我真的不认为这就是我要找的。我的导航工具栏看起来是这样的:所以我没有所有的dojo按钮等,所以我需要更换注册表部分,我想,但它对我不起作用哦,我让它起作用了。只需要将registry.byId更改为document.getElementbyId(…).onclick=zoomin;然后它就开始工作了谢谢