2011-03-14 227 views
0

我很困惑。我第一次使用Google Maps API(版本V3),但我不明白为什么Jquery已准备好速记不起作用。谷歌地图API(地图不显示)

<script type="text/javascript" 
    src="http://maps.google.com/maps/api/js?sensor=set_to_true_or_false"> 
</script> 

<script type="text/javascript"> 
    function initialize() { 
    var latlng = new google.maps.LatLng(-34.397, 150.644); 
    var myOptions = { 
    zoom: 8, 
    center: latlng, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    var map = new google.maps.Map(document.getElementById("map"), 
    myOptions); 
} 

</script> 

我想这两个$(function(){ }); and $(document).ready(function(){});

我的语法是正确的两次和萤火控制台显示没有错误。既不初始化地图。但是,当我加入

onload="initialize()到我的身体标记,它的工作。

只是好奇这里发生了什么。

编辑:下面是实际的代码

<script type="text/javascript" 
     src="http://maps.google.com/maps/api/js?sensor=false"> 
</script> 

<script type="text/javascript"> 


    $(function(){ 
    function initialize() { 
    var latlng = new google.maps.LatLng(-34.397, 150.644); 
    var myOptions = { 
    zoom: 8, 
    center: latlng, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    var map = new google.maps.Map(document.getElementById("map") 
    , 
    myOptions); 
} 
    }); 
+0

你可以显示你使用过的代码不起作用吗?顺便说一句,你需要将'sensor'设置为'true'或'false' – 2011-03-14 00:55:19

+0

我不认为你在前两个调用中调用'initalize()'。 onload应该是'window.onload = initialize;' – kjy112 2011-03-14 00:56:57

+0

是的,我认为你是对的。我定义了这个函数,但不要在这里调用它,是吧? – Ben 2011-03-14 01:32:11

回答

0

也许你的问题是 <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=set_to_true_or_false"> 你将它设置为真或假?顺便说一句,你链接到一个有效的jQuery js表吗? 您有合适的<Doctype>

+0

我的GET参数不好。在我的代码中,我确实将传感器设置为false,并且JQuery通过我的代码工作。 – Ben 2011-03-14 01:27:34

+0

等待,您的问题是否已解决或仍然卡住?顺便说一句,确保加载您的自定义JS之前连接jQuery库。 – 0x60 2011-03-14 07:09:38

+0

嗨,你好,我解决了这个问题。谢谢您的帮助! – Ben 2011-03-15 17:56:59

2

对不起,这是相当明显的。

我正在定义初始化,但没有调用它。

+0

是否有效?如果是那么你没有叫它 – kjy112 2011-03-15 01:05:32

+0

我刚刚遇到了同样的问题,你的回答为我节省了一些严肃的时间! – Bashevis 2013-06-02 19:54:44