Javascript 如何在不使用dijit的情况下更改按钮上的地图缩放级别?
我正在使用esri javascript API创建一个网络地图。我想在地图旁边有一个按钮,允许我放大/缩小(不是标准的esri按钮)。现在,我发现了很多使用dijit()的例子,但我只想使用一个简单的html按钮,比如:放大,然后在脚本部分说: 函数zoomin(){map.setZoom()} 现在我的问题是,我不知道如何让它起作用。我想问题是,在单击按钮之后,它找不到zoomin函数,因为它位于require([…])、function(){}的内部,但我也不能将它放在外部,因为代码取决于requireJavascript 如何在不使用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(){}的内部,但我也不能将它放在外部,因为代码取决于
因此,如果您能告诉我该怎么做,那就太好了。要放大地图,请使用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;然后它就开始工作了谢谢