如何解决百度地图 JS API 在移动端页面下方渲染地图,会导致 click 事件获取坐标偏移?

2023-03-02 00:50:31 +08:00
 Felldeadbird

最近用百度地图 JavaScript API GL ,由于页面上很多表单,地图不在手机当前屏幕渲染。这时候如果我拖动浏览器到下方地图,并点击地图任意位置并设置 mark 标记,会发现地图上并没有正确标记,返回的坐标也是往上偏移了许多。

网上搜索了好多帖子,大概就是说百度 JS GL 渲染导致的,但是没找到解决方案。我用旧版的 JS 3.0 ,在手机就不会有这个偏移问题,所以大家有解决方案吗?

415 次点击
所在节点    问与答
2 条回复
libasten
2023-03-02 01:35:43 +08:00
初始加载的时候,没有给地图 div 高度?试着在拖动事件中初始化地图看看呢?
Felldeadbird
2023-03-02 09:26:28 +08:00
@libasten 有给高度。只要 body 有滚动条,往下拉动,再在地图上点击触发 click 事件,获得的坐标就会偏移了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/920314

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX