arcgis for js 3.X通用百变气泡解决方案
Posted 左直拳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arcgis for js 3.X通用百变气泡解决方案相关的知识,希望对你有一定的参考价值。
题目宏大又拗口。没办法,我水平提升了,写文章的境界也应一起提升。所谓的提升,就是包装,要能唬得住人。比如方法总结要说成解决方案,不能扭扭捏捏,期期艾艾地说什么“心得一例”之类,太小家子气了。
就是解决方案,问你怕未。
话说,arcgis for js api里面,点击地图对象,弹出气泡(InfoWindow),这是标配。这个气泡,可以设置大小,显示图形属性,等等。一般来说这就够用了。但假如想显示些更复杂的内容,甚至做些更复杂的操作,该怎么办?
比如说:
点击地图某个对象,播放一段视频;打开一张全景图;或者不想显示这个气泡,改用自定义样式的弹窗,等等。
遇到这些情况,当然可以在它们的点击事件中针对性地写相关代码,一点问题都没有。但如果是好多图层,每个图层情况都不一样,那么代码就会相当的庞杂,条件判断语句层层嵌套。
其实可以采用一个通用的解决方案,简而言之,就是控制气泡内容来实现效果。具体思路是:
点击地图对象的时候,无须写针对性代码,还是采用系统默认的办法,让它弹出气泡,然后在这个气泡内容里想办法。气泡有所谓模板,里面可以设置样式和html标记。这就提供了足够的切入点。
我们可以在样式里控制气泡的大小和样式,甚至让它隐藏;html 标记可以是<iframe>
,在嵌入页面里写上相关JS代码,即可为所欲为矣。
原理相当简单,无须举例。
参考拙作:
arcgis for js 设置气泡大小
以上是关于arcgis for js 3.X通用百变气泡解决方案的主要内容,如果未能解决你的问题,请参考以下文章
arcgis api for js入门开发系列二十一气泡窗口信息动态配置模板
arcgis for js 4.X自定义气泡点击地图对象弹出对话框
arcgis for js 4.X自定义气泡点击地图对象弹出对话框