开源前端地图库 Leaflet 发布 1.8.0 版本

Leaflet 是一个开源的 JavaScript 库,用于构建 Web 地图应用。首次发布于 2011 年,它支持大多数移动和桌面平台,支持 HTML5 和 CSS3。其用户包括FourSquare、Pinterest和Flickr。

Leaflet发布了 v1.8.0 版本,这是一年半以来的开发成果。这是一个巨大的版本,主要集中在错误修复,主要的可靠性和可访问性的改进,清理遗留代码,以及对文档、开发工作流程和发布过程的大量改进。这是数百人的贡献的结晶,也是为未来更大的变化做准备。🍃从现在开始,发布将变得更加频繁。

Leaflet 的作者 Vladimir Agafonkin 来自乌克兰,在他开发这个版本的时候,外面的基辅正在响起空袭警报,警告说俄罗斯即将进行空袭。他希望这个版本献给乌克兰为自由和民主对抗俄罗斯入侵的斗争🇺🇦。

⚠️ 打破向后兼容的改动

  • 通过引入新的 TapHold 处理程序,替换传统的 Tap (#7026,@johnd0e) ,提高移动 Safari 上右键菜单事件模拟的可靠性
  • 重新组织 DivOverlay/Popup/Tooltip api (#7540 by @johnd0e)
    • 将 Popup 相关选项从 DivOverlay 移动到 Popup(#7778 by @Falke-Design)
    • 将 Tooltip 类从 leaflet-clickable 改为 leaflet-interactive(#7719 by @Falke-Design)
    • Map.closeTooltip 现在需要一个 Layer 作为参数(#7533 by @johnd0e)
  • 改进事件监听器的错误/参数处理(#7518 by @johnd0e)
  • 提高非接触设备上触摸事件模拟的可靠性(DomEvent.Pointer)(#7059,#7084,#7415 by @johnd0e)
  • 提高触摸设备上 dblclick 事件模拟的可靠性(DomEvent.DoubleTap)(#7027 by @johnd0e)
  • 提高 disablecklickpropagation 的可靠性(#7439 by @johnd0e)
  • 改进 Map hasLayer() 和 LayerGroup hasLayer() ,使其需要一个层作为参数(#6999 by @johnd0e)
  • 修复 Class.include 不覆盖选项(#7756 by @johnd0e)
  • 修正 Class.extend 以不修改源 props 对象(#6766 by @johnd0e)
  • 改进 Browser.touch 触摸设备检测(#7029 by @johnd0e)
  • 去除遗留的安卓hack(#7022 by @johnd0e)
  • 允许字体通过使字体大小相对于地图容器来尊重用户的浏览器设置。(如果需要的话,你可以改变 leaflet-container 上的字体大小来调整它。)(#7800,@chandu-4444)

❇️ API 变化

  • 使 DivOverlay/Tooltip 具有交互性(#7531,#7532 by @johnd0e)
  • 给 DivOverlay 添加 openOn,close,toggle函数 (#6639 by @johnd0e)
  • 引入 DomEvent.off (el) 以删除所有监听器(#7125 by @johnd0e)
  • 允许通过向 Util.formatNum/tenojson (#7100 by @johnd0e)传递 false 来防止舍入错误
  • 添加 autoPanOnFocus 到 Marker (#8042 by @IvanSanchez)
  • 将 referrerPolicy 添加到 TileLayer (#7945 by @natevw)
  • 将 playsInline 添加到 VideoOverlay (#7928,@falke-Design)
  • 添加 getCenter 到 ImageOverlay (#7848 by @Falke-Design)
  • 当 TileLayer 加载取消时,启动一个 tileabort 事件(#6786 by @dstndstn)
  • 在 Icon 中添加 crossOrigin(#7298 by @syedmuhammadabid)

✨ 改进

  • 通过删除 will-change CSS 属性(#7872 by @janjaap)改善内存占用
  • 提高图标路径检测试探法的可靠性(#7092 by @johnd0e)
  • 通过避免 GridLayer.onAdd (#7570 by @johnd0e)中的过度更新,提高添加平铺源的性能
  • 改进 panInside 中边缘情况的处理(#7469 by @daverapayment)
  • 缩小标记图标 SVG (#7600 by @rala72)
  • 允许在 TileLayer URL 中使用带空格的模板键(#7216 by @lubojr)
  • 改进绑定到 ImageOverlay (#7306 by @IvanSanchez)的 Tooltip 行为
  • 删除 Popup 和内容对话框之间的间隙(#7920 by @Malvoz)
  • 如果没有图层,可以通过 Canvas 触发 mousemove 事件(#7809 by @johnd0e)
  • 添加打印样式,以防止打印机删除控件中的背景图像(#7851 by @Malvoz)
  • 将属性代码从 Layer 移动到 Control.Attribution (#7764 by @johnd0e)
  • 重构 vmlCreate() ,这样它就不会将闭包暴露给 TypeError (#7279 by @darcyparker)
  • 提高 Control.Layers 的可靠性,不依赖浏览器 android 和触摸属性(#7057 by @johnd0e)
  • 通过不依赖浏览器的触摸检查(#7535, @johnd0e)来提高 Tooltip 的可靠性
  • 使浏览器易于自动化测试(#7335 by @bozdoz)
  • 在 Control.Layers 容器中用 span 替换 div,以修复 HTML 验证错误(#7914 by @tmiaa)
  • 添加一面乌克兰国旗作为默认署名(@mourner,#8109)

更多变更请查看 https://github.com/Leaflet/Leaflet/releases/tag/v1.8.0。

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/192004/leaflet-1-8-0-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。