谷歌地图 api javascript 在 mozilla 中不起作用
Posted
技术标签:
【中文标题】谷歌地图 api javascript 在 mozilla 中不起作用【英文标题】:Google maps api javascript doesn't work in mozilla 【发布时间】:2015-04-06 16:05:53 【问题描述】:我在 google maps api 页面上找到了一个脚本,用户可以在其中选择位置并将数据发送到 php -> mysql。它在 chrome 和 IE 中运行良好,但是当我尝试在 mozilla 中保存位置时,它所做的只是刷新父页面。 我对javascript几乎一无所知,所以如果有人能找到错误,将不胜感激:)
代码
<!DOCTYPE html >
<head>
<meta name=viewport content='initial-scale=1.0, user-scalable=no' />
<meta http-equiv='content-type' content='text/html; charset=UTF-8'/>
<title>Google Maps JavaScript API v3 Example: Map Simple</title>
<script type='text/javascript' src='https://maps.googleapis.com/maps/api/js'></script>
<script type='text/javascript'>
var marker;
var infowindow;
function initialize()
var latlng = new google.maps.LatLng(33.137550, -42.187500);
var options =
zoom: 1,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
var map = new google.maps.Map(document.getElementById('map-canvas'), options);
var html = "<table><tr><td><input type='button' value='Save Location' onclick='saveData(), window.parent.location.reload();'/></td></tr></table>";
infowindow = new google.maps.InfoWindow(
content: html
);
function addMarker(location)
if (!marker)
marker = new google.maps.Marker(
position: location,
map: map
);
else marker.setPosition(location);
google.maps.event.addListener(map, 'click', function(event)
addMarker(event.latLng);
google.maps.event.addListener(marker, 'click', function()
infowindow.open(map, marker);
);
);
function saveData()
var latlng = marker.getPosition();
var url = 'insert_location.php?lat=' + latlng.lat() + '&lng=' + latlng.lng();
downloadUrl(url, function(data, responseCode)
if (responseCode == 200 && data.length >= 1)
infowindow.close();
);
function downloadUrl(url, callback)
var request = window.ActiveXObject ?
new ActiveXObject('Microsoft.XMLHTTP') :
new XMLHttpRequest;
request.onreadystatechange = function()
if (request.readyState == 4)
request.onreadystatechange = doNothing;
callback(request.responseText, request.status);
;
request.open('GET', url, true);
request.send(null);
function doNothing()
</script>
</head>
<body style='margin:0px; padding:0px;' onload='initialize()'>
<div id='map-canvas' style='width: 100%; height: 800px'></div>
<div id='message'></div>
</body>
</html>
【问题讨论】:
window.parent.location.reload
在里面做什么?
【参考方案1】:
默认情况下,Javascript 并未关闭,但您的可能已关闭。
如果您想开启 Javascript,请执行以下操作:
在地址栏中输入 about:support,然后按 Enter 接受警告 搜索 javascript.enabled 确保该值为真。 (如果不是,请双击它)
像这样的陈述——“我对javascript一无所知”对你没有帮助。在您来这里要求我们其他人为您解决问题之前,请付出一些努力和研究。
【讨论】:
以上是关于谷歌地图 api javascript 在 mozilla 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
在谷歌地图javascript api中 - 如何移动地图而不是标记
减少谷歌地图成本计算,只能调用谷歌地图javascript api