arcgis api for js 4.* 分屏

在原有一个div的基础上,在添加一个div用来装地图。设置好两个容器的宽高
然后对两个view进行监听,可以用view.watch('extent',function(newVal,oldVal,property,object){})进行监听
当鼠标移出一个地图的时候,记得viewWatch.remove(),不然会进入死循环

<div id="myView">
      <div id="mainView"></div>
      <div id="splitView" class="d-n"></div>
</div>

style

   #myView{
        padding: 0;
        margin: 0;
        height: 100%;
        width: 100%;
        display: flex;
    }
    #mainView{
        height: 100%;
        flex: 1;
    }
    #splitView{
        height: 100%;
        flex: 1;
    }
    .d-n{
        display: none;
    }

监听

   function splitScreen(view){
        let mainViewWatch,splitViewWatch
        mainView=view;
        mainViewWatch=mainView.watch('extent',function(newVal,oldVal,property,object){
            splitView.extent=newVal;
            mainViewWatch.remove();
        })
        mainView.on('pointer-enter',setSplitView)
        mainView.on('pointer-leave',function(){ mainViewWatch.remove();})
        splitView.on('pointer-enter',setMainView)
        splitView.on('pointer-leave',function(){ splitViewWatch.remove();})
        function setMainView(){
            splitViewWatch=splitView.watch('extent',function(newVal,oldVal,property,object){
                mainView.extent=newVal;
            })
        }
        function setSplitView(){
            mainViewWatch=mainView.watch('extent',function(newVal,oldVal,property,object){
                splitView.extent=newVal;
            })
        }
        
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值