Die deutsche Google Maps Community.
Die Möglichkeiten sind da!
Forum Suche | Forum Übersicht | Anmerkung: registrierte Benutzer können sich über neue Einträge benachrichtigen lassen | Anmerkung: registrierte Benutzer können sich über neue Einträge benachrichtigen lassen
Übersicht ::
Google Maps API ::
JavaScript ::
Automatisch Marker aus textlink generieren
moderiert von:
Steffen
Automatisch Marker aus textlink generieren |
||
|---|---|---|
| tulas | verfasst: 14.11.2007, 02:09 | |
Neu hier
registriert: Nov. 2007
Beiträge: 1
Status: offline letzter Besuch: 14.11.07 |
Hallo, ich habe ein Script geschrieben mit dem es möglich ist (sein soll) Koordinaten aus Links aus dem Seitentext auszulesen und diese als Marker in der Karte anzuzeigen. Die Links haben folgendes Format a href="javascript:myclick(0)" title="22.879999,-109.900001". Das Script liest den titel aus und setzt die Angaben in Marker um. Soweit so gut. Bisher funktioniert dies im Firefox, der IE zeigt jedoch die MArker nicht an. Ich habe eine Beispielseite hier hochgeladen: http://www.findsurf.org/f...f_static/js_test2.html Das Script ist noch toltal unausgereift, ich weiß, aber das Hauptproblem ist momentan, dass der IE es nicht ausführt. Jemand Ideen? Das script sieht folgendermaßen aus: //<![CDATA[ if (GBrowserIsCompatible()) { // this variable will collect the html which will eventually be placed in the spotlist var spotlist_html = ""; // arrays to hold copies of the markers and html used by the spotlist // because the function closure trick doesnt work there var gmarkers = []; var i = 0; // A function to create the marker and set up the event window function createMarker(point,i,name,html,wave) {//wave ist art des breaks=beach, rocky etc. var marker = new GMarker(point, {title:name}); GEvent.addListener(marker,"click", function() { marker.openInfoWindowHtml(html); }); // save the info we need to use later for the spotlist gmarkers[i] = marker; // add a line to the spotlist html spotlist_html += '<dd>' + name + '</dd><dt>' + wave + '</dt>'; i++; return marker; } // This function picks up the click and opens the corresponding info window function myclick(i) { GEvent.trigger(gmarkers[i], "click"); } // create the map var map = new GMap2(document.getElementById("map")); map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); map.setCenter(new GLatLng(22.879999,-109.900001),8,G_HYBRID_MAP); // add the points var points = document.getElementById("description"); var spots = points.getElementsByTagName("a"); for (var i = 0; i < spots.length; i++) { if(spots[i].title) { status = spots[i].title; status = status.split(','); var point = new GLatLng(status[0],status[1]); var marker = createMarker(point,i,'marker','Mein Text','Beschreibung'); map.addOverlay(marker); } } // put the assembled spotlist_html contents into the spotlist div document.getElementById("spotlist").innerHTML = spotlist_html; } else { alert("Sorry, the Google Maps API is not compatible with this browser"); } //]]> |
|
|
|
|
|
User online:
Diese Angaben basieren auf den Useraktivitäten der letzten 10 Minuten