Hi Cliv, the problems is the var marker, must be declared as an array, var marker = new Array(); then stores each google.maps.Map () within this array
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0}
#map_canvas { height: 100% }
</style>
<script type="text/javascript"src="http://maps.googleapis.com/maps/api/js?&sensor=false"></script>
<script type="text/javascript" src="downloadXML.js"></script>
<script type="text/javascript">
var map
var marker = new Array();
var ObjParent
function initialize(Lat, Lng) {
var latlng = new google.maps.LatLng( 44.314337, 23.797633);
var mapOptions = {
center: latlng,
zoom: 17,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false,
panControl: false,
streetViewControl: false,
zoomControl: false
};
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
marker[0] = new google.maps.Marker({
position: latlng,
icon:'MapPin.png',
draggable:false,
map:map,
title:"Click for coordonate"
});
google.maps.event.addListener(marker[0], 'click', function(event) {
var point_click = marker.getPosition();
ObjParent.ClickMarkerEvent(point_click.lat(),point_click.lng());
});
}
function show_position(Lat, Lng, showInfo, strHeader, strComment){
var pos=new google.maps.LatLng(Lat, Lng);
map.setCenter(pos);
marker[0].setPosition(pos);
marker[0].setMap(map);
marker[0].setTitle("Click for coordonate");
if (showInfo==true) {
var html_text = "<table><tr><td style='font-family:Arial, Helvetica, sans-serif;font-weight:bold; color:#FF0000; font-size:20px'>" + strHeader + "</td></tr><tr><td>" + strComment + "</td></tr><tr><td align='center'></td></tr></table>";
var infowindow = new google.maps.InfoWindow({
content: html_text
});
infowindow.open(map,marker[0]);
}
}
function hide_position() {
marker[0].setMap(null);
}
function show_multiposition(xmlFile,showInfo){
downloadUrl(xmlFile, function(data) {
var xml = xmlParse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var point = new google.maps.LatLng(
parseFloat(markers[i].getAttribute("Lat")),
parseFloat(markers[i].getAttribute("Lng")));
var markerHeader = markers[i].getAttribute("Header");
var markerComment = markers[i].getAttribute("Comment");
//alert(point);
marker[i] = new google.maps.Marker({draggable:false,icon:'MapPin.png'});
map.setCenter(point);
marker[i].setPosition(point);
marker[i].setMap(map);
marker[i].setTitle("Click for coordonate");
if (showInfo==true) {
var html_text = "<table><tr><td style='font-family:Arial, Helvetica, sans-serif;font-weight:bold; color:#FF0000; font-size:20px'>" + markerHeader + "</td></tr><tr><td>" + markerComment + "</td></tr><tr><td align='center'></td></tr></table>";
var infowindow = new google.maps.InfoWindow({
content: html_text
});
infowindow.open(map,marker[i]);
}
}
});
}
function hide_multiposition() {
// Hide multi marker
for (var i = 0; i < marker.length; i++) {
marker[i].setMap(null);
}
}
</script>
</head>
<body scroll="no" onload="initialize(0, 0)">
<div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>