未捕获的类型错误:无法读取 null 的属性“firstChild”(Google 地图无法加载)[重复]
Posted
技术标签:
【中文标题】未捕获的类型错误:无法读取 null 的属性“firstChild”(Google 地图无法加载)[重复]【英文标题】:Uncaught TypeError: Cannot read property 'firstChild' of null (Google maps failing to load) [duplicate] 【发布时间】:2017-08-12 13:31:33 【问题描述】:我想知道是否有人可以将他们关于 Google Maps API 的知识借给我。我读过类似的问题,但仍然无法找到答案。正如标题所说,我的浏览器控制台中显示的错误是:
Uncaught TypeError: Cannot read property 'firstChild' of null
我了解这意味着传递值的方式存在问题;以下是我的相关代码 sn-ps,其中sources
在 Chrome 中指向:
// --- Global Variable
var map;
// --- View Model.
function AppViewModel()
// Initial Map
map = new google.maps.Map(document.getElementById('map'),
center: lat: 39.305, long: -76.617,
zoom: 12
);
// --- Initalize Application.
function initApp()
ko.applybindings(new AppViewModel());
Google 地图尝试加载时似乎会引发错误。有谁知道我在这里做错了什么?感谢您提供的任何帮助。
html 供参考:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Bolton Hill Neighborhood Map</title>
<link rel="stylesheet" href="static/main.css">
<meta name="viewport" content"width=device-width, initial-scale=1">
</head>
<body>
<div class='map'>maps error</div>
<script src="./js/knockout.js"></script>
<script src="./js/jquery.min.js"></script>
<script src="./js/app.js"></script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&callback=initApp" onerror="errorHandler"></script>
</body>
</html>
【问题讨论】:
无法找到地图 ID 【参考方案1】:我认为center: lat: 39.305, long: -76.617
与long
是不正确的。
您应该像这样定义 latlng:
var latlng = new google.maps.LatLng(39.305, -76.617);
map = new google.maps.Map(document.getElementById('map'),
center: latlng,
zoom: 12
);
和
未捕获的类型错误:无法读取 null 的属性“firstChild”
当地图容器不存在时通常会出现错误消息:
map = new google.maps.Map(document.getElementById('id_that_does_notexist'),
【讨论】:
我将long
更改为lng
,但这似乎并没有改变任何东西。我正在直接根据本指南为我的初始地图编写 javascript:developers.google.com/maps/documentation/javascript/examples/…
你把class='map'
弄错了,你需要改成这个:<div id='map'>maps error</div>
这是我的问题map = new google.maps.Map(document.getElementById('id_that_does_notexist'),
嗯,这也不能解决我的问题。我有一个 id="map" 并且在 javascript 代码中“var map = new google.maps.Map(document.getElementById('map'),” - 但仍然存在此错误
请提供更多信息,按 F12 查看控制台日志并在此处复制该错误或完整的 html 和 javascript?以上是关于未捕获的类型错误:无法读取 null 的属性“firstChild”(Google 地图无法加载)[重复]的主要内容,如果未能解决你的问题,请参考以下文章
未捕获的类型错误:无法读取 null 的属性“getContext”
为啥我会收到此错误:未捕获的类型错误:无法读取 null 的属性 'classList'
未捕获的类型错误:在输入单击时无法读取 null 的属性“样式”