当前位置: 首页 > news >正文

重庆网站建设公司 菠拿拿石家庄房产网 二手房出售

重庆网站建设公司 菠拿拿,石家庄房产网 二手房出售,常平东莞网站建设,一家专门做母婴的网站看过的知识不等于学会。唯有用心总结、系统记录,并通过温故知新反复实践,才能真正掌握一二 作为一名摸爬滚打三年的前端开发,开源社区给了我饭碗,我也将所学的知识体系回馈给大家,助你少走弯路! OpenLayers…

看过的知识不等于学会。唯有用心总结、系统记录,并通过温故知新反复实践,才能真正掌握一二
作为一名摸爬滚打三年的前端开发,开源社区给了我饭碗,我也将所学的知识体系回馈给大家,助你少走弯路!
OpenLayers、Leaflet 快速入门 ,每周保持更新 2 个案例
Cesium 快速入门,每周保持更新 4 个案例

OpenLayers 快速入门(一)Map对象
OpenLayers 快速入门(二)Layer 对象
OpenLayers 快速入门(三)Source 对象补充
OpenLayers 快速入门(四)View 对象
OpenLayers 快速入门(五)Controls 对象
OpenLayers 快速入门(六)Interaction 对象
OpenLayers 快速入门(七)矢量数据
OpenLayers 快速入门(八)事件系统
OpenLayers 快速入门(九)Extent 介绍
OpenLayers 快速入门(十)常用 API 补充

事件系统

事件系统是框架的核心部分,允许开发者监听和响应地图、图层、交互以及各种对象的状态变化。通过on方法订阅事件,通过un方法取消订阅,同时支持一次性事件监听(once)和自定义事件的能力。

// 监听事件
map.on("click", (e) => {});// 取消监听
map.un("click", (e) => {});// 一次性时间
map.once("click", (e) => {});// 自定义事件
map.on("customEvent", (e) => {});

Observable 对象

OpenLayers 中所有可触发事件的对象都继承自 ol/Observable 基类:

  • Map
  • View
  • Layer
  • Source
  • Interaction
  • Control
  • Feature
  • Overlay

通用事件:

  • change:通用变更事件
  • propertychange:属性发生变化时触发
  • error:通用错误事件,当发生错误时触发

Map 事件

  • click:点击事件
  • singleclick(最常用):真正的单击,没有拖动,也没有双击,此事件延迟 250 毫秒以确保它不是双击
  • dblclick:双击事件
  • loadend:加载额外地图数据完成时触发
  • loadstart:当加载额外地图数据(tiles、images,、features)开始时触发
  • moveend:地图移动后触发
  • movestart:地图开始移动时触发
  • pointerdrag: 指针拖动时触发
  • pointermove:指针移动时触发。注意在触摸设备上,这是在地图平移时触发的,因此与 mousemove 不同
  • postcompose:在图层组合完成后触发
  • postrender:在地图帧渲染完成后触发
  • precompose:在图层组合之前触发
  • rendercomplete:当渲染完成时触发

View

  • change:center:视图中心位置改变时触发
  • change:resolution:视图分辨率改变时触发
  • change:rotation:视图旋转角度改变时触发

Layer 事件

  • change:extent:图层范围改变时触发
  • change:maxResolution:最大分辨率改变时触发
  • change:minResolution:最小分辨率改变时触发
  • maxZoom:最大缩放级别改变时触发
  • minZoom:最小缩放级别改变时触发
  • change:source:图层源改变时触发
  • change:zIndex:图层 zIndex 改变时触发
  • change:visible:可见性改变时触发
  • change:opacity:图层透明度改变时触发

Source 事件

VectorSource

  • featureloadend:要素加载完成时触发
  • featureloaderror:要素加载错误时触发
  • featureloadstart:要素加载开始时触发
  • removefeature:要素移除时触发

ImageSource

  • imageloadend:图像加载完成时触发
  • imageloaderror:图像加载错误时触发
  • imageloadstart:图像加载开始时触发

TileSource

  • tileloadend:瓦片加载完成时触发
  • tileloaderror:瓦片加载错误时触发
  • tileloadstart:瓦片加载开始时触发

Overlay 事件

  • change:element:元素变更事件
  • change:position:位置变更事件
  • change:positioning:定位变更事件
  • change:offset:偏移量变更事件
  • change:map:地图变更事件

自定义事件

一、直接使用事件系统

// 添加自定义事件
map.on("customEvent", (event) => {console.log("自定义事件触发:", event.detail);
});// 两秒后触发自定义事件
setTimeout(() => {map.dispatchEvent({type: "customEvent",target: map,detail: { message: "Hello from custom event!" },});
}, 2000);

二、自定义 Observable 类

import Observable from "ol/Observable";
import Event from "ol/events/Event";// 自定义事件类
class StatusUpdateEvent extends Event {constructor(status) {super("statusupdate");this.status = status;this.timestamp = new Date();}
}// 自定义可观察对象
class CustomLayer extends Observable {constructor() {super();this.status = "idle";}startProcessing() {this.status = "processing";this.dispatchEvent(new StatusUpdateEvent(this.status));}completeProcessing() {this.status = "completed";this.dispatchEvent(new StatusUpdateEvent(this.status));}
}// 使用自定义层
const layer = new CustomLayer();
layer.on("statusupdate", (event) => {console.log(`状态更新: ${event.status} at ${event.timestamp}`);
});// 触发事件
layer.startProcessing();
setTimeout(() => layer.completeProcessing(), 2000);
http://www.dtcms.com/a/534399.html

相关文章:

  • 北京工程质量建设协会网站网页制作软件html
  • 福州做企业网站的公司中国网络科技公司排名
  • 寿光网站建设多少钱谈谈对seo的理解
  • 成都网站建设公司湖南岚鸿关于建设公司网站的申请
  • asp的公司网站长沙网页推广价格公司
  • 手机端网站开发视频建外贸网站比较好的公司
  • 帮忙做快站旅游网站大型网站建设用什么系统好
  • lamp网站开发黄金组合 pdf扫码点餐小程序
  • 网站后台怎样批量上传夷陵区住房和城乡建设局网站
  • 家乡网站建设wordpress富编辑器
  • 徐州手机网站营销公司哪家好网站页面设计怎么收费
  • 公司网站发展规划书贵州百度seo整站优化
  • 怎么制作网站商城济南pc网站建设公司
  • 动漫网站建设的目的最好看的2018中文2019
  • 建站合同html5搭建网页游戏
  • 南乐网站建设公司中国建设官网首页
  • 淄博网站设计方案工程机械网
  • 酒店类网站建设开发书wordpress更好
  • 网站内容规划各电商网站的特点
  • 全网vip影视网站一键搭建公司部门解散调岗不同意有赔偿吗
  • 深圳手机端网站建设模板四年级2023新闻摘抄
  • 网站在百度无法验证码怎么办创业平台名称
  • 健康湖州网站自动生成作文的软件
  • 53套网站源码西安seo诊断
  • 宝安哪有网站建设wordpress实名
  • 网站建设验收单格式微信社群运营工具
  • 如何把怎己做的网页放到网站上泰州营销型网站建设
  • 河南商都建设有限公司网站产品设计私单网站
  • 想开一个做网站的公司渠道网络股份有限公司
  • 免费响应式网站建设做网站网址怎么弄