我正在使用此代码使 Google Maps JavaScript v3 地图工作。但是当我点击我进入该地图可见的页面时,我不断得到Uncaught TypeError: Cannot read property '__e3_' of undefined
. 昨天它工作得很好,从那以后我没有在网站上做过任何事情!
var marker;
var map;
function initialize() {
var coordinates = new google.maps.LatLng(<?php if(!empty($photo['coordinates_latitude']) OR !empty($photo['coordinates_longitude'])) { echo $photo['coordinates_latitude'].','.$photo['coordinates_longitude']; } else { echo '59.328648,13.485672'; } ?>);
// KOORDINATER: Manuell uppdatering
$('#update-map').click(function() {
var lat = parseFloat(document.getElementById('coordinates-latitude').value);
var lng = parseFloat(document.getElementById('coordinates-longitude').value);
var latlong_update = new google.maps.LatLng(lat, lng);
$('#coordinates-select option[value=""]').attr('selected', 'selected');
marker.setPosition(latlong_update);
map.setCenter(latlong_update);
});
// KOORDINATER: Förvalda koordinater
$('select[name="coordinates"]').change(function() {
var split = $(this).val().split(',');
var latlong_static = new google.maps.LatLng(split[0], split[1]);
$('input[name="textfield-latitude"]').val(split[0]);
$('input[name="textfield-longitude"]').val(split[1]);
$('#check-04').removeAttr('disabled').attr({'checked': (localStorage.getItem('approx-coordinates') == 1 ? true : false)});;
$('#checkbox-04-text').removeClass('color-grey');
$('#goto-coordinates').show();
marker.setPosition(latlong_static);
map.setCenter(latlong_static);
});
// KOORDINATER: Ta bort koordinater
$('#delete-coordinates').click(function() {
var latlong_clear = new google.maps.LatLng(59.328648,13.485672);
var waschecked_coor = $('#check-04:checked').val() ? 1 : 0;
marker.setPosition(latlong_clear);
map.setCenter(latlong_clear);
localStorage.setItem('approx-coordinates', waschecked_coor);
$('input[name="textfield-latitude"]').val('');
$('input[name="textfield-longitude"]').val('');
$('#goto-coordinates').hide();
$('#check-04').attr({'disabled': 'disabled', 'checked': false});
$('#checkbox-04-text').addClass('color-grey');
$('#coordinates-select option[value=""]').attr('selected', 'selected');
});
/******************************************************************************
** THE CODE BELOW IS CAUSING THE PROBLEM **
******************************************************************************/
// KOORDINATER: Koordinater genom markör på kartan
google.maps.event.addListener(marker, 'dragend', function(a) {
var waschecked_coor = $('#check-04:checked').val() ? 1 : 0;
localStorage.setItem('approx-coordinates', waschecked_coor);
$('input[name="textfield-latitude"]').val(a.latLng.lat().toFixed(6));
$('input[name="textfield-longitude"]').val(a.latLng.lng().toFixed(6));
$('#check-04').removeAttr('disabled').attr({'checked': (localStorage.getItem('approx-coordinates') == 1 ? true : false)});
$('#checkbox-04-text').removeClass('color-grey');
$('#goto-coordinates').show();
map.panTo(a.latLng);
});
/******************************************************************************
** THE CODE ABOVE IS CAUSING THE PROBLEM **
******************************************************************************/
var myOptions = {
center: coordinates,
zoom: 14,
mapTypeId: google.maps.MapTypeId.SATELLITE,
streetViewControl: false
};
map = new google.maps.Map(document.getElementById('map-coordinates'), myOptions);
marker = new google.maps.Marker({
position: coordinates,
draggable: true,
map: map
});
}
// FUNKTION: Flytta markören
function moveMarker() {
var lat = parseFloat(document.getElementById('coordinates-latitude').value);
var lng = parseFloat(document.getElementById('coordinates-longitude').value);
var newLatLng = new google.maps.LatLng(lat, lng);
marker.setPosition(newLatLng);
map.setCenter(newLatLng);
}
// JQUERY
$(document).ready(function() {
// INITIERA KARTAN
initialize();
// KRYSSRUTA: Bakgrundsbild
$('input[name="checkbox-02"]').click(function() {
// KONTROLL: Ikryssad
if($(this).is(':checked')) {
var waschecked_wallpaper = $('#check-01:checked').val() ? 1 : 0;
localStorage.setItem('wallpaper', waschecked_wallpaper);
$('#check-01').attr({'disabled': 'disabled', 'checked': false});
$('#checkbox-01-text').addClass('color-grey');
// KONTROLL: Ej ikryssad
} else {
$('#check-01').removeAttr('disabled').attr({'checked': (localStorage.getItem('wallpaper') == 1 ? true : false)});
$('#checkbox-01-text').removeClass('color-grey');
}
});
// TEXTFÄLT: Koordinater
$('input[name="textfield-latitude"], input[name="textfield-longitude"]').keyup(function() {
// KONTROLL: Textfältet är inte tomt
if($(this).val().length == 0) {
var waschecked_coor = $('#check-01:checked').val() ? 1 : 0;
localStorage.setItem('approx-coordinates', waschecked_coor);
$('#goto-coordinates').hide();
$('#check-04').attr({'disabled': 'disabled', 'checked': false});
$('#checkbox-04-text').addClass('color-grey');
// KONTROLL: Textfältet är tomt
} else {
$('#goto-coordinates').show();
$('#check-04').removeAttr('disabled').attr({'checked': (localStorage.getItem('approx-coordinates') == 1 ? true : false)});
$('#checkbox-04-text').removeClass('color-grey');
}
});
});
如果我删除google.maps.event.addListener(marker, 'dragend', function(a) {
其中的内容,代码将完美运行,并且地图再次在页面上可见。
你能看出问题所在吗?正如我之前所说,从那时到现在,我没有对代码做任何其他事情。
提前致谢。