未捕获的referenceError google未定义 [英] Uncaught referenceError google is not defined

查看:149
本文介绍了未捕获的referenceError google未定义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请帮助我调试Chrome无法识别Google的原因。
我得到这个错误:



未捕获ReferenceError:google未定义


我已将API脚本移到顶部,失败。
我调整了我自己的代码以匹配Google的文档,失败。
Chrome是否会导致我的问题?


 <!DOCTYPE html> 
< html>
< head>
< title>天气图< / title>
< style type =text / css>
html,body {
margin:0;
}
#map-canvas {
width:100%;
身高:100%;
}
< / style>
< / head>
< body>
< div id =container>
< h1>地图测试< / h1>
< div id =map-canvas>
< / div>
< / div>

< script type =text / javascriptsrc =/ js / jquery-2.1.4.min.js>< / script>

< script type =text / javascript>
$(document).ready(function(){
google.maps.event.addDomListener(window,'load',initMap);
});

var map;
函数initMap(){
map = new google.maps.Map(document.getElementById(map- canvas),{
center:{lat:29.423017,lng:-98.48527} ,
zoom:8,
});
}
< / script>
< script async defer
src =https://maps.googleapis.com/maps/api/js?key=MY_KEY_WAS_HERE_&callback=initMap>
< / script>
< / body>
< / html>


解决方案

code> $(document).ready(); 因为window.load已经注册了一个事件监听器,并且这应该已经足够了。

你的谷歌地图脚本标记也应该在你的JavaScript代码之上,并且事件监听器也应该移动到函数的下面。

 < ; script async defer 
src =https://maps.googleapis.com/maps/api/js?key=MY_KEY_WAS_HERE_&callback=initMap>
< / script>

< script type =text / javascript>
var map;
函数initMap(){
map = new google.maps.Map(document.getElementById(map- canvas),{
center:{lat:29.423017,lng:-98.48527} ,
zoom:8,
});
}

google.maps.event.addDomListener(window,'load',initMap);
< / script>

下一次您应该仔细阅读文档。


Please help me debug why Chrome is not recognizing google. I get this error:

Uncaught ReferenceError: google is not defined

I have moved the API script to the top, fail. I adjusted my own code to match Google's documentation, fail. Is it Chrome that is causing my problem?

<!DOCTYPE html>
<html>
<head>
    <title>weather map</title>
    <style type="text/css">
    html, body {
        margin: 0;
    }
    #map-canvas {
        width: 100%;
        height: 100%;
    }
    </style>
</head>
<body>
    <div id="container">
        <h1>Map Test</h1>
        <div id="map-canvas">
        </div>
    </div>

    <script type="text/javascript" src="/js/jquery-2.1.4.min.js"></script>

    <script type="text/javascript">
        $(document).ready(function() {
            google.maps.event.addDomListener(window, 'load', initMap);
        });

        var map; 
        function initMap() {        
            map = new google.maps.Map(document.getElementById("map-    canvas"), {
                center: {lat: 29.423017, lng: -98.48527},
                zoom: 8,
            });
        }
    </script>
    <script async defer 
        src="https://maps.googleapis.com/maps/api/js?key=MY_KEY_WAS_HERE_&callback=initMap">
    </script>
</body>
</html>

解决方案

You shouldn't put your google maps event in $(document).ready(); since window.load already registers an event listener and that should be enough.

Your google maps script tag should also be above your JavaScript code and the event listener should also be moved beneath the function.

<script async defer 
    src="https://maps.googleapis.com/maps/api/js?key=MY_KEY_WAS_HERE_&callback=initMap">
</script>

<script type="text/javascript">
    var map; 
    function initMap() {        
        map = new google.maps.Map(document.getElementById("map-    canvas"), {
            center: {lat: 29.423017, lng: -98.48527},
            zoom: 8,
            });
        }

    google.maps.event.addDomListener(window, 'load', initMap);
</script>

Next time you should read the documentation more thoroughly.

这篇关于未捕获的referenceError google未定义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆