У меня есть 2 разных событий, пожалуйста, поправьте меня, если я делаю это неправильно,Google карты, передавая «карту» к другому событию
//initializing the map
google.maps.event.addDomListener(window, 'load', initialize);
//initializing the markers
google.maps.event.addListener(map, 'idle', showMarkers);
Первое событие для инициализации карты (установить его) , второе событие - для запроса базы данных для новых маркеров, когда текущая граница карты изменяется (пока не работает)
Поскольку я определил «карту» внутри функции инициализации, как я могу получить к ней доступ за пределами функции и передать ее ко второму событию? Как вы можете видеть, я объявил его перед функциями, как глобальная переменная, но она до сих пор не определена в качестве аргумента события, я застрял на этом в течение нескольких дней
var map;
function initialize(){
//defining map options
var mapLatlng = new google.maps.LatLng(37.09024, -100.712891);
var mapOptions = {
zoom: 4,
center: mapLatlng
}
//defining the map itself
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
}
function showMarkers(){
Parse.initialize("X","X");
var query = new Parse.Query("business_and_reviews");
var results = new Parse.Object("business_and_reviews");
query.equalTo("name","McDonalds");
query.find({
success: function(results) {
console.log(results);
for (var i = 0; i < results.length; i++) {
var object = results[i];
}
var lat = (object["attributes"]["lat"]);
var lng = (object["attributes"]["lng"]);
console.log(lat);
console.log(lng);
//adding the marker from the query
var marker = new google.maps.Marker({
position: mapLatlong,
map: map,
title: 'Hello World!'
});
},
error: function(object, error) {
}
});
}
//initializing the map
google.maps.event.addDomListener(window, 'load', initialize);
//initializing the markers
google.maps.event.addListener(map, 'idle', showMarkers);
Для второго события «карте» не определено