- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图在谷歌地图上绘制许多圆圈(大约1000个),在不同的位置和大小,然后将点击事件绑定(bind)到它们。但是这么多次调用 new google.maps.Circle(parameters);
会使页面加载缓慢,有时它会永远挂起,所以我想弄清楚是否有更好/更快的方法完成我想做的事情。
我看到有一个叫做 kml 图层的东西,但似乎没有任何简单的方法可以用它绘制实心圆圈,并且我不确定是否仍然可以将单击事件绑定(bind)到图层中的每个单独的圆圈或不。
看圈子workaround在 Google KML 常见问题解答页面上,我不确定生成包含数千个与此类似的圆圈的 KML 文件是否最终会节省时间。
我也不知道如何生成这个 kml 文件。
最后,考虑到我正在尝试从数据库中绘制圆圈,因此我要么必须动态生成 KML 文件以供使用,要么每次绘制圆圈时生成一个新文件从数据库中删除或添加,以便文件保持最新。
当然,如果还有其他选择,我洗耳恭听!
最佳答案
在其他人的帮助下通过 Google Maps API v3 Group ,我能够实现一个 map 叠加层,它可以很好地处理 10,000 个点。诀窍是使用 Canvas 平铺覆盖,它可以最大限度地减少 DOM 元素的数量,以换取更简单/更轻量级的 POJsO(普通的旧 JavaScript 对象)。
带有鼠标单击事件的演示页面(仅限 API v2):http://notebook.kulchenko.com/maps/datamark
带光标交换的演示页面(API v2 和 v3):http://notebook.kulchenko.com/maps/gridmark
关于google-maps - 向谷歌地图添加许多圆圈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6768477/
leaflet:一个开源并且对移动端友好的交互式地图 JavaScript 库 中文文档: https://leafletjs.cn/reference.html 官网(英文): ht
我是一名优秀的程序员,十分优秀!