在我的页面上显示传单地图时,我遇到了奇怪的行为。通常地图会按预期渲染并且运行良好。但是,我只想在我在 javascript 中检测到的表单中出现错误时才显示地图。因此,如果我将父级设置<div id="map">
为display: none;
并稍后根据需要显示,则不会加载图块(或仅部分加载并且不继续)并且地图奇怪地“错位”(未按照 js 中的定义居中)。
我的想法是浏览器可能不会在display: none;
父级中呈现元素?
我尝试使用该$(document).ready(...)
功能隐藏地图,但没有任何区别。一旦我隐藏并显示地图,同样的行为就会重复。我在 Firefox 44.0 和 Chromium 48.0 上对此进行了测试,并且行为是一致的。
任何提示都会有所帮助。这是远程加载元素(ajax)的一般行为吗?
编辑1:
现在我知道了解决方案和解决方法(见下面的答案),但我仍然不确定这是否是远程加载元素的全局行为?感谢您的任何解释。
编辑2:
请参阅接受的答案以获取解释。