Asp.net mvc 3 谷歌地图没有';我不想加载

Asp.net mvc 3 谷歌地图没有';我不想加载,asp.net-mvc-3,google-maps,Asp.net Mvc 3,Google Maps,我在加载谷歌地图时遇到问题。在我的头部部分,我有以下代码(我有一个正确的谷歌API密钥) html{高度:100%} 正文{高度:100%;边距:0;填充:0} #地图画布{高度:100%} 函数初始化(){ 变量myOptions={ 中心:新google.maps.LatLng(-34.397150.644), 缩放:8, mapTypeId:google.maps.mapTypeId.ROADMAP }; var map=new google.maps.map(document.getE

我在加载谷歌地图时遇到问题。在我的头部部分,我有以下代码(我有一个正确的谷歌API密钥)


html{高度:100%}
正文{高度:100%;边距:0;填充:0}
#地图画布{高度:100%}
函数初始化(){
变量myOptions={
中心:新google.maps.LatLng(-34.397150.644),
缩放:8,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“map_canvas”),
肌肽);
}
我的身体部分开始如下:


我的MVC应用程序
这不管用。但是,当我将“map_canvas”div移到主体之后时:

<body onload="initialize()">
<div id="map_canvas" style="width: 100%; height: 100%"></div>
    <div class="page">
        <div id="header">


一切都很好。你能帮帮我吗。此外,如何使用jQuery而不是调用initialize方法?

正如Bassam所提到的,您需要设置一个显式的像素宽度和高度。否则,请查看
页面、标题和标题
元素的CSS。这些元素的宽度和高度需要级联到
map\u canvas
元素

要使用jQuery而不是initialize,请从
主体
元素中删除
onload=“initialize()”
,并在
initialize()
函数上方添加以下代码:

$(document).ready(function() {
   initialize();
 });

尝试像素的高度和宽度,而不是百分比,它应该工作
<body onload="initialize()">
<div id="map_canvas" style="width: 100%; height: 100%"></div>
    <div class="page">
        <div id="header">
$(document).ready(function() {
   initialize();
 });