我使用来自 Google Maps Javascript API v3 的 Places 搜索框:
var searchField = $(".search-box").get(0);
var searchBox = new google.maps.places.SearchBox(searchField);
我在移动网络应用程序中使用它。当设备方向发生变化时,将重新计算页面字体大小(作为我们应用程序逻辑的一部分),因此搜索框的大小和位置也会发生变化。
但是自动完成框 (.pac-container) 的宽度和位置会在更改其他页面元素的大小之前重新计算,而且我无法控制负责此重新计算的方法。
有没有办法访问负责 .pac-container 内联 CSS 的方法?它没有列在 API 文档中,我在缩小的 map api 源中找不到它。
最佳答案
延迟触发窗口调整大小事件(让我们的应用程序更改页面大小)成功了:
setTimeout(function() {
google.maps.event.trigger(window, 'resize');
}, 500);
然后我发现问题是由父容器上设置的 css transition: all
属性引起的。删除过渡解决了这个问题。
关于javascript - Google Maps Places 搜索框 : how to recalculate position of pac-container,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33173536/