Я задаюсь вопросом, почему я получаю следующее сообщение об ошибке:Странное поведение таблицы фьюжн Google
TypeError: e.row.beachID неопределен
Мой обработчик события клика работает, как ожидалось, но мой Mouseover и MouseOut событие обработчик, хотя он аналогичен обработчику кликов, выводит сообщение TypeError, указанное выше. Если я могу получить данные слоя из gft с помощью «обработчика кликов», то почему я не могу сделать то же самое с обработчиком «mouseover» и «mouseout» - я пытаюсь извлечь данные из одной таблицы.
/* start map initialization */
function initialize() {
latlng = new google.maps.LatLng(49.894634, -97.119141);
var myOptions = {
center: latlng,
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.SMALL
},
mapTypeControl: true,
mapTypeControlOptions: {
mapTypeIds: [
google.maps.MapTypeId.ROADMAP,
google.maps.MapTypeId.SATELLITE,
google.maps.MapTypeId.HYBRID,
google.maps.MapTypeId.TERRAIN
],
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
overviewMapControl: true,
overviewMapControlOptions: {
opened: true
}
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
layer = new google.maps.FusionTablesLayer({
query: {
select: 'POINT',
from: tableID
},
suppressInfoWindows: true
});
layer.setMap(map);
infoWindow = new google.maps.InfoWindow();
// begin tooltip section
layer.enableMapTips({
select: "'beachID', 'beach'",
from: tableID,
geometryColumn: 'POINT',
suppressMapTips: true,
delay: 100,
tolerance: 8
});
google.maps.event.addListener(layer, 'mouseover', function (e) {
$('#info').html(
'<h3>' + e.row['beachID'].value + '</h3>',
'<h3>' + e.row['beach'].value + '</h3>');
});
google.maps.event.addListener(layer, 'mouseout', function (e) {
$('#info').html('<h2>Mouseout</h2>') ;
});
// end tooltip section
google.maps.event.addListener(layer, 'click', function (e) {
// close infoWindow if open
if (infoWindow) {
infoWindow.close();
}
beachID = e.row['beachID'].value;
beachName = e.row['beach'].value;
point = e.row['POINT'].value;
region = e.row['region'].value;
sampleDate = e.row['Date'].value;
ecoli_count = e.row['avg_ecoli_count'].value;
water_quality_guideline = e.row['water_quality_guideline'].value;
});
}
Есть ли что-то очевидное, что я пропустил? Любые мысли всегда приветствуются.
Заранее спасибо. Майкл