默认情况下,当html标签隐藏时,谷歌地图不会渲染整个帧
Google Map doesn't render in whole frame when html tag hidden by default
在我的应用程序中,我需要使默认情况下不可见的谷歌地图,当用户单击显示按钮时,它将显示。我的问题是,当点击按钮时,地图不能在整个帧中正确渲染。
<div id="map-canvas" style="display: none"></div>
这是javascript
函数
function show(){
if(document.getElementById("showMap").value == "Show Map"){
document.getElementById("showMap").value = "Hide Map";
document.getElementById("map-canvas").style.display = '';
}
else{
document.getElementById("showMap").value = "Show Map";
document.getElementById("map-canvas").style.display = 'none';
}
}
这是我的谷歌地图加载功能。
function initialize() {
var mapOptions = {
zoom: 8,
center: new google.maps.LatLng(7.7, 80.7)
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
也使用一些CSS。
#map-canvas {
height: 100%;
width: 80%;
margin: 0px;
padding: 0px
}
如何解决这个问题?
隐藏地图画布
document.getElementById("map-canvas").style.visibility = "hidden";
显示地图画布
document.getElementById("map-canvas").style.visibility = "visible";
你可以使用JQuery - show(), hide()和toggle()来做同样的事情
相关文章:
- 有没有一种方法可以在没有文档或jQuery的情况下使用javascript解码html实体
- 如何使用JavaScript在没有html dom的情况下隐藏html元素
- 如何在不创建格式错误的HTML标记的情况下分解字符串
- 在iframe的情况下,jQuery html()将失败
- 如何在不打断标记的情况下突出显示html字符串中的文本
- 在不更改HTML源代码的情况下,在管理员TinyMCE编辑器中突出显示文本
- 获取 HTML 5 音频控制文件位置并在不使用 id 选择器的情况下更新 src
- 如何在不使用Internet Explorer的情况下从未挂起的HTML文件执行程序
- 如何在不停止HTML呈现的情况下放置停止代码的延迟
- 如何通过JS在不干扰其标记的情况下更改HTML文档中字符串的所有实例
- 在不使用sort()的情况下获取HTML LI元素的副本
- 使用javascript:在没有阻止html标记(<b>、<p>等)的情况下,阻止脚本的最佳方法
- 在不干扰HTML代码的情况下,将javascript文件导入javascript文件
- 如何在不点击的情况下突出显示 HTML 中的文本
- 如何在不导致 HTML 表格失真的情况下正确使用追加
- 如何在不使用任何 html 输入/搜索元素的情况下读取本地客户端文本文件
- 在不更改 HTML 的情况下操作 HTML 字符串的内容
- 如何在不包含导航选项卡内容、页脚和头部的情况下打印 HTML/PHP 页面
- 如何使html链接标签可以在没有标签的情况下工作
- 在特定情况下HTML和javascript的换行标记