gpt4 book ai didi

javascript - Google map 标记无法加载

转载 作者:行者123 更新时间:2023-11-28 09:59:38 24 4
gpt4 key购买 nike

我是这个网站的新手,对 google map 和 javascript 都很陌生,所以请耐心等待。

我的任务是向我管理的网站添加一些谷歌地图界面,因此我遵循了谷歌教程,并且我已经了解了显示 map 、地理编码地址字符串和设置标记。问题在于,第一个地理编码指针始终出现,但其余指针仅间歇性出现(通常在第一次加载或多次重新加载后)。Firebug 报告以下错误:

"Invalid value for property : (53.3800136, -1.475428500000021) on line 28 of main.js"

我想我已经找到了有问题的函数,脚本似乎在此时间歇性地停止,阻止其他标记加载。我已经尝试了我能找到的所有相关解决方案,但现在没有任何效果,我很困惑有人可以帮忙吗?这是我的引用代码:

     function load_map() {
var startLatLng = new google.maps.LatLng(52.485809,-1.888783);
// create a new Google latLang marker object with co-ords for
// start location

// create a JASON object to store map configuration
var config = {
zoom: 5,
center: startLatLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};


map = new google.maps.Map(document.getElementById("map"), config);
// initialise the map passing the display divs id and the config
// object

var startMarker = new google.maps.Marker({
position: startLatLng,
map: map
})

// create a new marker object for start location
startMarker.setMap(map);
// Add the marker to the map

geocodeAddress("ARM Ltd Rockingham Court 152 Rockingham Street Sheffield Great Britain");
geocodeAddress("Centrum House 36 Station Road Egham Surrey");
geocodeAddress("Pipers Way Swindon United Kingdom");
// call the geocoding function to add markers to the map hard coded right now for testing
// but to be pulled from a DB in future
}

/*
* This function loads a marker overlay on to the location provided
* and calls the addInfoWindow function to add an info window to it
*
* @ param a google location object representing the location at which
* the marker is to be placed
* @ param a String variable representing the information to be attached
* to the window.
*/

function loadMarker(location,windowText) {
var tempMarker = new google.maps.Marker({
position: location,
map: map
});

addInfoWindow(windowText,tempMarker);
// add an information window anchored on the marker

tempMarker.setMap(location); // seems to work ok up to this point.
// add the marker to the map at this location

}

/*
* A function to geocode the string type address passed into usable
* lat lng type co-ords
* @ param a String representing the address to be geocoded
*/

function geocodeAddress (address) {
var geocoder = new google.maps.Geocoder();
geocoder.geocode( {'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
loadMarker(results[0].geometry.location,"Info here");
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}

/*
* This function adds an info window to each marker and allows it
* to be activated on click.
* @Param
*/

function addInfoWindow (infoText,marker) {
var contentString = infoText;
var tempInfoWindow = new google.maps.InfoWindow({
content: contentString
});
google.maps.event.addListener(marker, 'click', function() {
tempInfoWindow.open(map,marker);
});
}
// initialise all the page components by calling there load functions

// called using a standard body onload to intilise the map
function init () {
load_map();
}

最佳答案

第 53 行错误地引用了位置,而不是 map

更改您的代码:

tempMarker.setMap(location);

tempMarker.setMap(map);

关于javascript - Google map 标记无法加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9379227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com