方法1(推荐使用,实时效果好). // 以下要给2个视图添加事件,使其“实时联动”,包括缩放,拖动,和旋转。 view2p_1.on(["mouse-wheel", "drag", "hold"], function (event) { setTimeout(function(){ // viewpoint包含但不限于extent。 view2p_2.viewpoint = view2p_1.viewpoint; }, 80); }); view2p_2.on(["mouse-wheel", "drag", "hold"], function (event) { setTimeout(function(){ // viewpoint包含但不限于extent。 view2p_1.viewpoint = view2p_2.viewpoint; }, 80); }); 注意: “mouse-wheel(鼠标滚轮事件)”的触发是在滚动开始的时候(上升沿),而不是在滚动完成的时候(下降沿), 可以通过setTimeout设置延迟时间,最终得以实现。 参考:https://blog.csdn.net/zhangzhen1987730/article/details/78210029#commentBox 方法2(没有实时效果,只有最终效果). require(["esri/core/watchUtils"], function(watchUtils) { /* code goes here */ }); whenTrue(obj, propertyName, callback) -> {WatchHandle}static propertyName可能的取值(我发现的)stationary(静止的),ready。 watchUtils.whenTrue(view2p_1, "stationary", function () { // viewpoint包含但不限于extent。 view2p_2.viewpoint = view2p_1.viewpoint; }); watchUtils.whenTrue(view2p_2, "stationary", function () { // viewpoint包含但不限于extent。 view2p_1.viewpoint = view2p_2.viewpoint; });
arcgis api for js 4.11 实现分屏对比、实时联动的关键代码.txt
最新推荐文章于 2022-04-18 13:43:16 发布