我有以下代码来加载Google地图。它适用于大多数浏览器,但不适用于IE11和Safari 8.相反,我只获得容器背景颜色。
我认为它与未被调用的函数有关,因为如果我向脚本添加警报,它也会忽略它。该警报适用于地图加载的浏览器。
仅供参考 - php来自WP插件Advanced Custom Fields。
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCJ02VcPM0KRyiwWNd_hjr0nNnTMJkFmVs&sensor=false"></script>
<script type="text/javascript">
//google.maps.event.addDomListener(window, 'load', init);
function init() {
<?php
$location = get_field("map_location", $contactpage);
?>
var lat = <?php echo $location['lat']; ?>;
var lng = <?php echo $location['lng']; ?>;
var myLatLng = {lat, lng};
var lat = lat + 0.016;
var latLngCenter = {lat, lng};
var mapOptions = {
zoom: 13,
zoomControl: false,
scaleControl: true,
disableDoubleClickZoom: true,
mapTypeControl: false,
streetViewControl: false,
draggable: false,
disableDoubleClickZoom: true,
scrollwheel: false,
center: new google.maps.LatLng(latLngCenter),
styles: <?php the_field("map_customization", $contactpage); ?>
};
var mapElement = document.getElementById('map');
var map = new google.maps.Map(mapElement, mapOptions);
<?php
if(get_field("show_map_marker", $contactpage) == 1) { ?>
var mapicon = '<?php the_field("map_marker_image", $contactpage); ?>';
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: '<?php the_field('map_marker_title', $contactpage); ?>',
icon: mapicon,
optimized:true
});
//alert("show map");
//Remap map on resize.
google.maps.event.trigger(map, "resize");
<?php
};
?>
};
$(window).resize(init);
$(document).ready(init);
</script>
答案 0 :(得分:0)
我在IE11中遇到javascript错误:SCRIPT1003: Expected ':'
在这些行上:
var myLatLng = {lat, lng};
// ...
var latLngCenter = {lat, lng};
那些需要:
var myLatLng = {lat: lat, lng: lng};
// ...
var latLngCenter = {lat: lat, lng: lng};