PlanetGMaps Forum

planetGMaps

Die deutsche Google Maps Community.
Die Möglichkeiten sind da!

Forum

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


zum vorhergehenden Thema Thema drucken zum nächsten Thema

Übersicht ::  Google Maps API ::  JavaScript ::  Automatisch Marker aus textlink generieren
moderiert von: Steffen

Zum aktuellsten Beitrag 

Automatisch Marker aus textlink generieren

tulas verfasst: 14.11.2007, 02:09
Neu hier
Neu hier
tulas

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");
}

//]]>
Nach oben  Profil PM senden
 


User online:

Diese Angaben basieren auf den Useraktivitäten der letzten 10 Minuten

^ Top | © 2006 planet-gmaps.de | css | xhtml