HERE 地图 API 事件延迟
HERE Maps API event delays
使用 HERE 地图 API 平移地图时,动画完成后不久会触发 'mapviewchangeend' 事件。这意味着很难同步,比如说,一个 Leaflet 覆盖,而没有覆盖对象滞后。
var map = new H.Map(document.getElementById('mapContainer'),
defaultLayers.normal.map, ...
var lMap = L.map('mapContainer', {zoomControl: false});
...
function onMapViewChange() {
lMap.setView(map.getCenter(), map.getZoom(), {animation: false});
}
map.addEventListener('mapviewchange', function () {
onMapViewChange();
});
map.addEventListener('mapviewchangeend', function () {
onMapViewChange();
});
有没有办法消除这种延迟?我已经为 H.mapevents.Behavior 尝试了不同的动力学设置,但到目前为止没有成功。
我认为您可以挂接到 view model and the viewport 触发的 sync
事件。我似乎记得这些事件在地图渲染时同步触发...
经过一番挖掘,我发现 github 上显示的示例非常相似:
使用 HERE 地图 API 平移地图时,动画完成后不久会触发 'mapviewchangeend' 事件。这意味着很难同步,比如说,一个 Leaflet 覆盖,而没有覆盖对象滞后。
var map = new H.Map(document.getElementById('mapContainer'),
defaultLayers.normal.map, ...
var lMap = L.map('mapContainer', {zoomControl: false});
...
function onMapViewChange() {
lMap.setView(map.getCenter(), map.getZoom(), {animation: false});
}
map.addEventListener('mapviewchange', function () {
onMapViewChange();
});
map.addEventListener('mapviewchangeend', function () {
onMapViewChange();
});
有没有办法消除这种延迟?我已经为 H.mapevents.Behavior 尝试了不同的动力学设置,但到目前为止没有成功。
我认为您可以挂接到 view model and the viewport 触发的 sync
事件。我似乎记得这些事件在地图渲染时同步触发...
经过一番挖掘,我发现 github 上显示的示例非常相似: