Ciao a tutti, ho trovato uno script per evitare di non poter cliccare un marker nascosto da un altro nelle stesse precise coordinate.
Quello che non riesco a fare è integrare il codice con il mio, mi dareste una mano?
quà c'è lo script, guardate la sorgente: http://williams.edu/Economics/ArtsEc...intabsdemo.htm
qui invece posto il mio codice:
codice:<script type="text/javascript" src="markercluster.js"></script> <script type="text/javascript"> //<![CDATA[ var baseIcon; var data = null; var row_no = 0; var map = null; var mgr = null; var markers = []; var markerClusterer = null; function initialize() { if(GBrowserIsCompatible()) { map = new GMap2(document.getElementById('map')); map.setCenter(new GLatLng(1, -1), 2); var mapui = map.getDefaultUI(); mapui.maptypes.physical = false; map.setUI(mapui); map.setMapType(G_HYBRID_MAP); } baseIcon = new GIcon(G_DEFAULT_ICON); baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png"; baseIcon.iconSize = new GSize(20, 34); baseIcon.shadowSize = new GSize(37, 34); baseIcon.iconAnchor = new GPoint(9, 34); baseIcon.infoWindowAnchor = new GPoint(9, 2); var helpString = ''; GDownloadUrl("geokml.php", function(data) { var xml = GXml.parse(data); var myMarkers = xml.documentElement.getElementsByTagName("marker"); for (var i = 0; i < myMarkers.length; i++) { var name = myMarkers[i].getAttribute('name'); var address = myMarkers[i].getAttribute('address'); var link = myMarkers[i].getAttribute('link'); var cat = myMarkers[i].getAttribute("cat"); var point = new GLatLng(parseFloat(myMarkers[i].getAttribute('lat')), parseFloat(myMarkers[i].getAttribute('lng'))); var marker = createMarker(point, name, address, link, cat); markers.push(marker); // var sidebar = document.getElementById('sidebar'); if (markers.length == 0) { //sidebar.innerHTML = 'No results found.'; return; } // var sidebarEntry = createSidebarEntry(marker, name, address, link, cat); //sidebar.appendChild(sidebarEntry); } var mcOptions = { gridSize: 50, maxZoom: 10 }; var markerCluster = new MarkerClusterer(map, markers, mcOptions); map.getContainer().style.overflow="hidden"; }); function createMarker(point, name, address, link, cat) { var marker = new GMarker(point, customIcons[cat]); var html = '' + name + ' ' + address; GEvent.addListener(marker, 'click', function() { marker.openInfoWindowHtml(html); }); return marker; } } function createSidebarEntry(marker, name, address, link, cat) { var div = document.createElement('div'); var html = '' + name + ' ' + address; div.innerHTML = html; div.style.cursor = 'pointer'; div.style.marginBottom = '5px'; GEvent.addDomListener(div, 'click', function() { GEvent.trigger(marker, 'click'); }); GEvent.addDomListener(div, 'mouseover', function() { div.style.backgroundColor = '#eee'; }); GEvent.addDomListener(div, 'mouseout', function() { div.style.backgroundColor = '#fff'; }); return div; } //]]> </script>

Rispondi quotando