【03】openlayers 地图事件
绑定事件:map.on(type, listener)
取消绑定:map.un(type, listener)
type:事件类型
listener:执行得函数体
事件类型:
//事件类型
let type = {
click:'click',//单击
dblclick:'dblclick',//双击,双击会触发click
singleclick:'singleclick',//单击,延迟250毫秒,就算双击不会触发
moveend:'moveend',//鼠标滚动事件
pointermove:'pointermove',//鼠标移动事件
pointerdrag:'pointerdrag',//鼠标拖动事件
precompose:'precompose',//地图准备渲染,为渲染
postcompose:'postcompose',//地图渲染中
postrender:'postrender',//地图渲染全部结束
changeLayerGroup:'change:layerGroup',//地图图层增删时触发
changeSize:'change:size',//地图窗口发生变化就会触发
changeTarget:'change:target',//地图绑定的div发生更改时触发
changeView:'change:view',//地图view对象发生变化触发
propertychange:'propertychange',//Map对象中任意的property值改变时触发
}
例子:
//绑定事件
let fn = function(e){
console.log(e)
}
map.on(type.click,fn) //取消绑定
setTimeout(()=>{
map.un(type.click,fn)
},3000)
通常结合使用的方法:
map.forEachFeatureAtPixel(pixel, callback)
map.on('click',function(e){
//屏幕坐标
let pixel = this.map.getEventPixel(e.originalEvent);
//检测与视口上的像素相交的要素
map.forEachFeatureAtPixel(pixel,function(feature,layers){
//feature,返回的要素
console.log(feature)
//layers,返回的图层
console.log(layers)
})
})
【03】openlayers 地图事件的更多相关文章
- Google地图接口API之地图事件(四)
演示几个地图事件: 1. 点击标记缩放地图 仍然使用上一遍文章使用的英国伦敦的地图.点用户点击标记时实现缩放地图的功能(点击标记时绑定地图缩放事件). 代码如下: <html> <h ...
- 百度地图API的第一次接触——地图事件
0.初始化地图 var map = new BMap.Map("container"); var point = new BMap.Point(116.404, 39.915); ...
- Openlayers 地图定位到相应位置并缩放
说明: 在地图操作中,有个功能,需要点击一个点,将视图定位到点击点的位置,并放大. 解决方案: 1.可以有openlayers中可以有ol.View来控制,但是在更改时,会将地图初始化时设置的maxZ ...
- Android百度地图开发03之地图控制 + 定位
前两篇关于百度地图的blog写的是,一些基本图层的展示 和 覆盖物的添加+地理编码和反地理编码. 接下来,这篇blog主要说一些关于地图控制方面的内容和定位功能. 百度地图提供的关于地图的操作主要有: ...
- ArcGIS Runtime for Android开发教程V2.0(8)基础篇-----地图事件
转自:http://blog.csdn.net/arcgis_mobile/article/details/8263283 ArcGIS Runtime sdk for Android为我们提供了丰富 ...
- 【04】openlayers 地图弹框
效果: 创建地图: //创建地图 var map = new ol.Map({ //设置显示地图的视图 view: new ol.View({ projection: 'EPSG:4326', //投 ...
- 【11】openlayers 地图交互
地图交互interaction 关于map的方法: //添加地图交互 map.addInteraction(interaction) //删除地图交互 map.removeInteraction(in ...
- 【iScroll源码学习03】iScroll事件机制与滚动条的实现
前言 想不到又到周末了,周末的时间要抓紧学习才行,前几天我们学习了iScroll几点基础知识: 1. [iScroll源码学习02]分解iScroll三个核心事件点 2. [iScroll源码学习01 ...
- openlayers 注册事件例子
registerEvents:function() { this.events = new OpenLayers.Events(this, this.div, null, true); functio ...
随机推荐
- django框架进阶-admin-长期维护
############### django--admin的使用 ################ # django后台管理: # 第一步: # 在settings文件中修改语言和时区 L ...
- django框架进阶-AJAX-长期维护
################## 预备知识---json ####################### 预备知识,json 什么是json?这是一种数据格式,和语言没有关系, 为什么 ...
- resent|aspiration|deficiency|diagnosed|distract|emphasize
VERB 怨恨;憎恶;愤恨If you resent someone or something, you feel bitter and angry about them. She resents h ...
- STL:map中的lower_bound和upper_bound
今天在做leetcode的Longest Increasing Subsequence题目时,需要用到二分查找,于是翻看了<STL源码剖析>这本书,发现map里面有lower_bound和 ...
- 点分治——POJ 1741
写的第一道点分治的题目,权当认识点分治了. 点分治,就是对每条过某个点的路径进行考虑,若路径不经过此点,则可以对其子树进行考虑. 具体可以看menci的blog:点分治 来看一道例题:POJ 1741 ...
- python3多线程应用详解(第二卷:多线程到底是怎么工作的)
现在很多人都说用多线程工作快是因为多个不同任务可以同时执行,注意我说的是不同任务,要是重复做一件事达到相同效果就是画蛇添足了,其实这是个错误的说法,线程真正的本质是无法同时执行的.现在我们来看下多线程 ...
- 【Linux_Shell 脚本编程学习知识点、判断传入参数是否是 整数】
判断脚本传入的参数是否是整数 常用的几种方法 完整Shell 脚本如下: #!/bin/sh ##################################################### ...
- 深入JVM内核--GC参数
堆 GC参数 - 串行收集器 最古老,最稳定 效率高 可能会产生较长的停顿 -XX:+UseSerialGC 新生代.老年代使用串行回收 新生代复制算法 老年代标记-压缩 0.844: [GC 0.8 ...
- VSAN磁盘扩容与收缩(二)
- Redhat7 配置https
Redhat7 配置https 分为自签名证书和第3方证书(此时实验为第3方,自签名略) 安装: # yum install httpd mod_ssl 生成key: # openssl genrsa ...