我在 PHP 的一个数组中有多个 LAT/LONG,但可用于显示 lat/long 的代码是显示单个 lat/long,我尝试在循环中迭代数组for
,但它不起作用如下所示:
<html>
<head>
<style type="text/css">
div#map {
position: relative;
}
div#crosshair {
position: absolute;
top: 192px;
height: 19px;
width: 19px;
left: 50%;
margin-left: -8px;
display: block;
background: url(crosshair.gif);
background-position: center center;
background-repeat: no-repeat;
}
</style>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;
var geocoder;
var centerChangedLast;
var reverseGeocodedLast;
var currentReverseGeocodeResponse;
function initialize() {
<?php for($i=0;$i<count($data);$i++){?>
var latlng = new google.maps.LatLng(<?php echo $data[$i]['lat'].','.$data[$i]['long']; ?>);
var myOptions = {
zoom: 40,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
geocoder = new google.maps.Geocoder();
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: "<?php echo $data[$i]['deviceID'];?>"
});
<?php }?>
}
</script>
</head>
<body onLoad="initialize()">
<div id="map" style="width:200px; height:200px">
<div id="map_canvas" style="width:100%; height:200px"></div>
<div id="crosshair"></div>
</div>
</body>
</html>
我怀疑javasctipt代码中必须有一些参数multiple
才能使这项工作,但不确定......有人可以帮忙吗?