Hi Leute ... ich hab eine Seite für einen Immo-Makler gebastelt.
Auf den Detailseiten der Immobilien findet sich unten ein Bing-Lageplan. Die Daten für die Karte werden aus einer Datenbank geladen. Entweder kann man eine Adresse eingeben und kriegt einen groben Auschnitt der Umgebung (funktioniert wunderbar) oder man gibt die Längen / und Breitengrade sowie die Darstellung an für einen individuell angepassten Ausschnitt (macht noch im IE Probleme).
Hier erstmal der JS / PHP Code (den zukünftig jeder gerne nutzen kann):
Ich weiß, dass meine Lösung etwas Billo ist ... aber Sie funktioniert und reicht für mein Vorhaben vollkommen aus. Im Firefox läuft alles super. Ich kriege den Pin an die richtige Stelle gfesetzt und dieser Info Kasten ist auch korrekt gefüllt. Selbst der WEB-Devolper wirft keine JS Fehler.
Im IE7 wird die Seite gar nicht erst angezeigt und im IE8 hört die Seite mittendrin auf zu laden.
Mein Problem liegt irgendwie in dem ersten Teil des JS Quellcodes .
Sobald ich die Zeilen:
var pin = new[....]
... und ...
map.AddPushpin(pin);
auskommentiere funtioniert alles wunderbar egal welcher Browser ....
*Link entfernt*
in Anbetracht der Tatsache, dass die Seite in ein Paar tagen freigeschaltet wird, kann ich die Fehler nicht drin stehen lassen. ich werde mir jetzt erstmal ne Browserweiche basteln, damit die PushPins nur angezeigt werden, wenn man den Firefox benutzt (da der ja keine Fehler liefert). Aber vlt. kennt ja jemand das Problem ... ich bin im Moment etwas confused
Auf den Detailseiten der Immobilien findet sich unten ein Bing-Lageplan. Die Daten für die Karte werden aus einer Datenbank geladen. Entweder kann man eine Adresse eingeben und kriegt einen groben Auschnitt der Umgebung (funktioniert wunderbar) oder man gibt die Längen / und Breitengrade sowie die Darstellung an für einen individuell angepassten Ausschnitt (macht noch im IE Probleme).
Hier erstmal der JS / PHP Code (den zukünftig jeder gerne nutzen kann):
Code:
if ($row['breitengrad'] != '' && $row['laengengrad'] != '' && $row['darstellung_bing'] != '' && $row['hoehe_bing'] != '') {
$coords = true;
$breitengrad = $row['breitengrad'];
$laengengrad = $row['laengengrad'];
$view = $row['darstellung_bing'];
$hoehe = $row['hoehe_bing'];
$orientierung = ($row['orientation_bing'] != '') ? $row['orientation_bing'] : 'North';
$rs_tmp = mysql_query("SELECT * FROM anhaenge WHERE objektnr_extern='$row[objektnr_extern]' AND gruppe='TITELBILD' LIMIT 0,1",CONNECTION_ID);
$tmp = mysql_fetch_array($rs_tmp);
$titelbild = 'http://www.maklergenius.de/uploads/immopics/small/'.$tmp['pfad'];
$pinText = addslashes('<img src="'.$titelbild.'" alt="" title=""/>');
$objTitel = addslashes($row['objekttitel']);
} else {
$coords = false;
}
?>
<script type="text/javascript">
<?php if($coords) {?>
var display = '<?=$view?>';
var GlobePosition = new VELatLong(<?=$breitengrad?>,<?=$laengengrad?>);
var pinID = 1;
var pin = new VEPushpin(pinID,GlobePosition,null,'<?=$objTitel?>','<?=$pinText?>');
function GetMap()
{
map = new VEMap('myMap'); // ZielDiv
map.LoadMap(GlobePosition, <?=$hoehe?>, VEMapStyle.<?=$view?>); // Karte initialisieren
if (display == 'Birdseye'){
map.AttachEvent("onobliqueenter", OnObliqueEnterHandler);
}
map.AddPushpin(pin);
}
function OnObliqueEnterHandler()
{
if(map.IsBirdseyeAvailable())
{
var TopOfNeedle = new VELatLong(<?=$breitengrad?>,<?=$laengengrad?>);
map.SetBirdseyeScene(TopOfNeedle,VEOrientation.<?=$orientierung?>);
}
}
<?php } else {?>
function GetMap()
{
map = new VEMap('myMap'); // ZielDiv
map.LoadMap(); // Karte initialisieren
map.Find('','<?=$IMMO_Adresse?>',null,null,0,1,false,false,false,true, onComplete); // Suchen
}
function onComplete(shape, FindResult, VEPlace, HasMoreFlag)
{
map.LoadMap(VEPlace[0].LatLong,18,VEMapStyle.Birdseye,false);
shape = new VEShape(VEShapeType.Pushpin, VEPlace[0].LatLong);
shape.SetTitle(VEPlace[0].Name);
map.AddShape(shape);
toggleElement('detail_lageplan');
}
<?php }?>
</script>
Ich weiß, dass meine Lösung etwas Billo ist ... aber Sie funktioniert und reicht für mein Vorhaben vollkommen aus. Im Firefox läuft alles super. Ich kriege den Pin an die richtige Stelle gfesetzt und dieser Info Kasten ist auch korrekt gefüllt. Selbst der WEB-Devolper wirft keine JS Fehler.
Im IE7 wird die Seite gar nicht erst angezeigt und im IE8 hört die Seite mittendrin auf zu laden.
Mein Problem liegt irgendwie in dem ersten Teil des JS Quellcodes .
Sobald ich die Zeilen:
var pin = new[....]
... und ...
map.AddPushpin(pin);
auskommentiere funtioniert alles wunderbar egal welcher Browser ....
*Link entfernt*
in Anbetracht der Tatsache, dass die Seite in ein Paar tagen freigeschaltet wird, kann ich die Fehler nicht drin stehen lassen. ich werde mir jetzt erstmal ne Browserweiche basteln, damit die PushPins nur angezeigt werden, wenn man den Firefox benutzt (da der ja keine Fehler liefert). Aber vlt. kennt ja jemand das Problem ... ich bin im Moment etwas confused
Zuletzt bearbeitet: