我正在为我的地图使用ArcGIS API 4.0版。
每当加载地图时,用户必须向下滚动才能看到地图。 这是我面临的第一个问题。
我的地图位于页面中间的某个位置,因此用户必须向下滚动才能查看。
然后,如果在地图上单击某个点或拖动某个区域进行放大,则地图显示为选区的指针不是鼠标指向的确切点。它指向鼠标指针上方的位置。
以下是示例代码。
<TabControl>
注意: - arcgsi js api样本也存在同样的问题...... https://developers.arcgis.com/javascript/latest/sample-code/sandbox/sandbox.html?sample=get-started-mapview
如果您运行此代码,您将看到是否向下滚动并拖动一个区域(通过按住shift并拖动鼠标),它将拖动选区上方的区域。
答案 0 :(得分:0)
嗯,我注意到只要用户滚动就会发生这种情况。 所以我建议删除滚动条或减小顶部标题容器的大小。
有关详细信息,请参阅以下运行代码: -
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
<title>Add the Compass widget to a basic 2D map - 4.0</title>
<style>
html,
body,
#viewDiv {
padding: 0;
margin: 0;
height: 100%;
width: 100%;
overflow: hidden;
}
</style>
<link rel="stylesheet" href="https://js.arcgis.com/4.0/esri/css/main.css">
<script src="https://js.arcgis.com/4.0/"></script>
<script>
require([
"esri/Map",
"esri/views/MapView",
"esri/widgets/Compass",
"dojo/domReady!"
],
function(
Map,
MapView,
Compass
) {
var map = new Map({
basemap: "national-geographic"
});
var view = new MapView({
container: "viewDiv",
scale: 500000,
center: [26.26, 39.17],
map: map
});
/********************************
* Create a compass widget object.
*********************************/
var compassWidget = new Compass({
view: view
});
// Add the Compass widget to the top left corner of the view
view.ui.add(compassWidget, "top-left");
});
</script>
</head>
<body>
<!-- add div for test-->
<div style="height:100px;"></div>
<div id="viewDiv"></div>
</body>
</html>
希望这会对您有所帮助:)
答案 1 :(得分:0)
我在其中一个ArcGIS论坛中发布了这个,并且知道这是4.0的错误,将在4.1中修复。