Openlayers 遍历查找交互事件(ol.interaction)

说明

有时候需要遍历openlayers的交互事件,并根据不同类型进行操作/监控。

解决方案

方法一:实现了找到交互事件中的Select事件,并删除

map.getInteractions().forEach(function (interaction) {
            if (interaction instanceof ol.interaction.Select) {
                map.removeInteraction(interaction);
            }
        });

方法二:其实还有另一种写法,getArray()获取到的是Interactions的数组,可以用操作数组的方式去操作

var selectInteraction = map
        .getInteractions()
        .getArray()
        .find(interaction => {
          return interaction instanceof ol.interaction.Select;
        });
map.removeInteraction(selectInteraction);

原文地址:https://www.cnblogs.com/giser-s/p/12124075.html

时间: 2024-10-25 21:08:23

Openlayers 遍历查找交互事件(ol.interaction)的相关文章

OpenLayers 之 地图交互功能(interaction)详解

地图交互功能和上一篇讲的地图控件有些混淆,它们都控制着用户与地图的交互,区别是地图控件的触发都是一些可见的 HTML 元素触发,如按钮.链接等:而交互功能都是一些设备行为触发,都是不可见的,如鼠标双击.滚轮滑动等,手机设备的手指缩放等. 地图的交互功能包含很多,如地图双击放大,鼠标滚轮缩放,矢量要素点选,地图上绘制图形等等.只要是涉及到与地图的交互,就会涉及到 intercation 类,它定义了用户与地图进行交互的基本要素和事件.下面我们就来看看用户与地图都有那些交互,怎么交互. 注: '自定

交互事件的使用

这个题目是临时想出来的. 在 xcode  开发时,发现手势使用时,有时候没反应,但是原始的例子确实没有问题. 经过查找,发现 userInteractionEnabled. 没有设置为 YES,默认值是 NO. 没有设置过的话,就不能相应交互事件,如点击啊,拖动啊. 就跟一个layer的作用差不多.如 UIimage 就是默认值NO,所以点击不起作用,但是别人的例子确可以用. 还有一个重要的概念就是响应链.这个解决一个动作多次相应的情况. 找到一段UI定时器代码.这个很多地方都可以用. - (

Echarts 图例交互事件

图例交互事件: 1) legendselectchanged : 切换图例选中状态后的事件 (注:图例组件用户切换图例开关会触发该事件,不管你有没有选择,点击了就触发) 2)legendselected:例组件用legendSelect 图例选中后的事件,即点击显示该图例时,触发就生效. 3)legendunselected: legendUnSelect 图例取消选中后的事件. 4)datazoom:数据区域缩放后的事件.缩放视觉映射组件. 5)datarangeselected:select

遍历查找问题的应用场景

查找问题是指在一个样本范围内,是否存在需要的数据. 在学习开发的过程中,我们经常遇到该类型的问题,学习遍历-查找问题,将有助于我们快速分析问题,给出解题思维流程图. 1.查找判断问题 单纯的查找问题,是用来判断给出的数据类型里面是否存在有我们想查找的数据,而不关心这些数据是什么.在解决该类问题的时候,往往用到以下方案: 第一步:定义一个bool变量isFind,表示是否找到,由于一开始还没有开始查找,自然没有找到,所以变量isFind的值应该为false. bool isFind=false;

unity游戏开发之服务器与客户端或页面流转之自定义交互事件

引言: 1,游戏页面与页面的交互 (1)装备背包 (2)装备信息页面 在游戏开发中,2D页面之间,有时候少不了关联性,比如游戏的背包系统,玩家进入背包系统(见上图装备背包以及装备信息页面),点击装备,查看装备信息页面,一般卡牌类游戏这些信息页面都附带增加装备 属性值的功能,比如<放开那三国>里装备的强化功能,玩家花一定量的游戏货币强化了装备后,该装备信息页面里装备属性会随着刷新.但是关闭该装备信息页面后,背包系统 页面里对应的该装备描述也要随着改变,但是背包系统怎么知道装备信息页面里已经改变了

爪哇国新游记之二十五----图及其遍历查找

代码: import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; // 顶点类 class Vertex{ String name;// 名称 boolean visited;// 是否已访问

jquery json遍历和动态绑定事件

<div id='tmpselectorList' style='border: 1px solid grey;max-height: 150px;position:absolute;text-align: left; overflow: auto;background:white;width:153px;'> </div> <script type="text/javascript"> $(document).ready(function () {

JavaScript与HTML交互——事件

JavaScript和HTML的交互是通过事件实现的.JavaScript采用异步事件驱动编程模型,当文档.浏览器.元素或与之相关对象发生特定事情时,浏览器会产生事件.如果JavaScript关注特定类型事件,那么它可以注册当这类事件发生时要调用的句柄. 事件流 事件流描述的是从页面中接收事件的顺序,比如有两个嵌套的div,点击了内层的div,这时候是内层的div先出发click事件还是外层先触发?目前主要有三种模型 IE的事件冒泡:事件开始时由最具体的元素接收,然后逐级向上传播到较为不具体的元

DOM遍历查找结点

一.遍历API(2个) 1.深度优先原则遍历NodeIterator 节点迭代器 创建遍历API对象: var iterator=document.createNodeIterator(开始的父节点对象,whatToShow,null,false); whatToShow: NodeFilter.SHOW_ELEMENT(遍历元素节点) NodeFilter.SHOW_ALL(遍历所有) 用while循环,反复调用iterator.nextNode()方法 只要nextNode(),就向下一个移