GMap- Irgendwie mache ich was bei Übergabe falsch..

sid61

Mitglied
// Dies ist die Zeile, welche den Inhalt aus der Datenbank bekommt (für jeden Datensatz)..

Code:
var wahlico =
xmlResults.getElementsByTagName('icon').item(i).firstChild.data;

// Etwas Blabla für das Info Bubble
Code:
html += "<strong>" + name + "</strong><br />";
html += "<HR>";
html += "<strong>Objekt Typ: </strong>" + catalog +"<br />";
html += "<strong>Kaltmiete: </strong>" + rent + " EURO uro<br />";
html += "<HR>";
html += address + '<br />';
html += zip + '&nbsp;' + city + ' &nbsp;<br /><br />';
html += "<a style='color: #FF9900' target=\"_top\" href='index.php?
option=com_wohnraum24&task=view&id="+property_id+"'>[Detail Ansicht]</
a>";
html += '</div></div>';

// Nachfolgend nun die Zeile, die mich irgendwie zum verzweifeln bringt.
// Wenn ich statt wahlico den Inhalt von wahlico direkt in dieses Feld schreibe,
// dann klappt es auch mit der Anzeige. In wahlico steht dann, welches Icon
// genutzt werden soll, also iconHouse oder iconBlue oder, oder...
// Aber es gelingt mir nicht, das der Wert hier eingefügt wird - er erkennt dann nichts und // setzt das default Icon, was ich ja nicht will :-(

Code:
newMarkers[newMarkers.length] = createMarker(new GPoint(lng,lat),
html, wahlico);
// Setzt den marker in Ausgabe

Habe einige Varianten schon probiert, bekomme aber kein Ergebnis..

Hat jemand eine Idee, wie ich das hin bekomme ?

Danke Kasimir
 
Hi Kuddeldaddeldu,

Nein hatte ich noch nicht probiert, aber dann bricht die Kartendarstellung komplett mit Fehlern ab. Ich habs bisher nur mit

//GLog.write(request.responseText); //LOG Fenster
//GLog.write(url); // LOG Fenster

geprüft, ob alles ankommt und es kommt an. Auch wenn ich das ganze in das Bubble Fenster einfüge (also so html += wahlico + '<br />';) -
dann wird mir für jede Immobilie das richtige Icon ausgeben.

Wenn ich den Inahlt also sagen wir iconBlue direkt hineinschreibe, statt wahlico - dann wird mir auch das richtige Icon angezeigt. Da dies in einer Schleife läuft - wird dann natürlich für alle Immos das (in diesem Fall) iconBlue ausgegeben.

In wahlico steht alles richtig drin, das habe ich überprüft, aber es kommt mir so vor, als wenn ich das falsch einfüge - also er eben denkt wahlico - kenne ich nicht, also gibs dat Standard Icon.

Gruss
Kasimir
 
Das ist die Function Marker...


Code:
function createMarker(point, label, icon)
{
  var marker = new GMarker(point, icon);
  var html = label;

  GEvent.addListener(marker, "click", function()
  {
    marker.openInfoWindowHtml(html);
  });
  return marker;
}

Gruss
Kasimir
 
Und wie erzeugst du "wahlico"?
Soweit ich das sehe, ist wahlico ein String...dort benötigst du aber ein Objekt(per new GIcon() zu erzeugen)
 
Hi,
komisch, mein letzter Beitrag war einfach weg ?

Also noch einmal..

Ich habe eine Datei integriert, die sich icon.js nennt... deren Inhalt sieht so aus..

Code:
// Create icons ///////////////////////////////////////////////////////////
var icon = new GIcon(); // for some reason this bugs if I remove var
icon.image = "/includes/maps/images/point-red.png";
icon.shadow = "/includes/maps/images/point-shadow.png";
icon.iconSize = new GSize(12, 20);
icon.shadowSize = new GSize(22, 20);
icon.iconAnchor = new GPoint(6, 20);
icon.infoWindowAnchor = new GPoint(5, 1);

iconHouse= new GIcon();
iconHouse.image = "/includes/maps/images/house-blue.png";
iconHouse.shadow = "/includes/maps/images/house-shadow.png";
iconHouse.iconSize = new GSize(12, 20);
iconHouse.shadowSize = new GSize(22, 20);
iconHouse.iconAnchor = new GPoint(6, 20);
iconHouse.infoWindowAnchor = new GPoint(5, 1);

und so weiter....

Und hier nochmal die Zeile...zum erzeugen...

Code:
newMarkers[newMarkers.length] = createMarker(new GPoint(lng,lat), html, iconHouse);

Wenn ich wie hier das Icon wie iconHouse direkt so wie in der Zeile hineinschreibe - geht es auch - es wird das Icon korrekt angezeigt.

Code:
newMarkers[newMarkers.length] = createMarker(new GPoint(lng,lat), html, wahlico);

Wenn ich aber statt dessen 'wahlico' benutze, dann gibt er mir ein falsches Icon aus und für alle Immobilien dann das gleiche falsche Icon.

Also er ignoriert quasi, was in wahlico drin steht. Muss ich vielleicht wahlico anders einfügen in diese Zeile ?

Er durchläuft ja hier eine Schleife, das er quasi für jede Immobile das Icon setzt. Wenn ich mir den Inhalt von wahlico ansehe mittels //GLog.write(wahlico);
dann sehe ich im LOG, das er bei jedem Durchgang den Inhalt von Wahlico korrekt interpretiert und auch ausgibt, nur scheint die Zeile newMarkers darauf zu pfeifen

Gruss
Kasimir
 
Zuletzt bearbeitet:
Ich glaub, jetzt dämmerts :)

Also dein HTTP-Request liefert dir für "wahlico" irgendeinen String mit dem Namen des von dir bereits erzeugten GIcon()-Objekts (z.B. IconHouse)

Das bleibt aber immer noch ein simpler String...wenn du willst, dass aus diesem String ein Zeiger auf das gleichnamige Objekt wird, verwende eval()

Code:
newMarkers[newMarkers.length] = createMarker(new GPoint(lng,lat),
html, eval(wahlico));
 
Hallo Sven,

bitte entschuldige, das ich erst jetzt auf deinen Beitrag antworte. Aber seit dem ich aus dem Krankenhaus heraus bin, gibt sich eine Grippe und nun Bronchitis und mein Zucker die Hand.

Ich war schlicht weg wieder einmal voll ausgeschaltet.
Jetzt geht es mir dank der treuen lieben Pflege meiner Frau wieder soweit, das ich mal wieder am aktivem Geschehen teilnehmen kann...

So - es ist schon irre, wenn man bedenkt wieviele Stunden ich für eine Lösung gebraucht habe, die du mit nur einem Satz gelöst hast. Es funktioniert ganz toll und ich habe mich riesig darüber gefreut. Jetzt kann ich endlich meine Icon Verwaltung fertig stellen, welche ich ja bisher nie einsetzen konnte, weil es nicht funktioniert hatte.

Ich bedanke mich auf diesem Wege nochmals recht herzlich bei dir.

Liebe Grüße
kasimir :)
 

Neue Beiträge

Zurück