类:交互

ol/interaction/Interaction~交互


import Interaction from 'ol/interaction/Interaction.js';

抽象基类通常仅用于派生子类,而不直接在应用程序中实例化。交互是指用户更改地图状态的操作。某些交互类似于控件,但不会与 DOM 元素关联。例如,KeyboardZoom 在功能上与 Zoom 相同,但由键盘事件而非按钮元素事件触发。尽管交互没有 DOM 元素,但其中一些会渲染矢量数据,因此可以在屏幕上可见。

new Interaction(options)

Name Type 描述
handleEvent function | undefined

由地图调用的方法,用于向交互通知浏览器事件已分派。若函数返回假值,则事件向地图交互链中其他交互的传播将被阻止(包括无显式返回的函数)。交互按地图交互集合的逆序进行遍历。

触发事件:

子类

继承

可观察属性

Name Type 可设置 ObjectEvent type 描述
active boolean change:active

true如果交互已激活,false否则。

方法

递增修订计数器并派发更改事件。

dispatchEvent(event){boolean | undefined} inherited

派发一个事件,并调用所有监听此类型事件的侦听器。事件参数可以是字符串,也可以是具有 type 属性的对象。

Name Type 描述
event BaseEvent | string

事件对象。

返回:
false 若在事件对象上调用了 preventDefault 方法,或任何侦听器返回 false。

获取值。

Name Type 描述
key string

键名。

返回:
值。

getActive(){boolean}

返回交互当前是否处于激活状态。

返回:
如果交互激活,则为 true,否则为 false

getKeys(){Array.<string>} inherited

获取对象属性名称列表。

返回:
属性名称列表。

获取与此交互相关联的地图。

返回:
地图.

getProperties(){Object.<string, *>} inherited

获取包含所有属性名称和值的对象。

返回:
对象。

getRevision(){number} inherited

获取该对象的版本号。每次修改对象时,其版本号将递增。

返回:
修订。

handleEvent(mapBrowserEvent){boolean}

处理 map browser event

Name Type 描述
mapBrowserEvent MapBrowserEvent

地图浏览器事件。

返回:
false 用于停止事件传播。

on(type, listener){EventsKey | Array<EventsKey>} inherited

监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数

返回:
监听器的唯一键。如果以事件类型数组作为第一个参数进行调用,则返回将是键的数组。

once(type, listener){EventsKey | Array<EventsKey>} inherited

仅监听一次特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回:
监听器的唯一键。若以事件类型数组作为第一个参数调用,则返回键的数组。

set(key, value, silent) inherited

设置值。

Name Type 描述
key string

键名。

value *

值。

silent boolean | undefined

更新而不触发事件。

启用或禁用交互。

Name Type 描述
active boolean

激活的。

setProperties(values, silent) inherited

设置键值对集合。请注意,此操作会修改现有属性并添加新属性,但不会删除任何现有属性。

Name Type 描述
values Object.<string, *>

值。

silent boolean | undefined

更新而不触发事件。

un(type, listener) inherited

取消监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

unset(key, silent) inherited

取消设置属性。

Name Type 描述
key string

键名。

silent boolean | undefined

在不触发事件的情况下取消设置。