Hi Sunny,
function showobject(ebene){
if (document.getElementById(ebene).style.display == "block") {
document.getElementById(ebene).style.display = "none";
}
else {
document.getElementById("persdaten").style.display = "none";
^^^^
Hier sollte wohl "block" stehen, da sonst das DIV nicht mehr eingeblendet wird, wenn du ein zweites Mal klickst. Ich nehme an, das wolltest du haben.
// ...
}
}
Das funktioniert auch, und zwar auch in Mozilla - nur aber eben so, dass sich die jeweils eingeblendete Ebene über dem Bild enomis1.gif befindet. Im IE wird das Bild umflossen - so wäre es gewünscht.
Das kann ich jetzt nur schwer nachvollziehen, da hier alle Bilder fehlen. Kannst du bitte nochmal die Adresse posten, unter der man sich dieses Problem ansehen kann?
Ich hab jetzt versucht, das Script von Matthias anzuwenden (obwohl ich immer noch nicht glaube dass es am JS liegt ;) ) und zwar so:
visible=false;
function showobject() {
if (!visible) {
document.getElementById('persdaten').style.visibility='visible';
visible=true;
} else {
document.getElementById('persdaten').style.visibility='hidden';
visible=false;
}
}
Das funktioniert auch mit Opera, allerdings macht es die DIVs nur unsichtbar und entfernt sie nicht aus dem Elementenfluss. Das könnte Probleme machen.
#persdaten, #ausbildung, #berufserfahrung, #faehigkeiten, {
position:relative;
display:none;
left:13px;
margin-right:20px;
}
Wenn ich das ganze JS rausnehme und das div ganz normal per display:block; im CSS einblende, hab ich ebenfalls das Problem, dass sich die Ebene über das Bild legt.
Nimm entweder position:relative heraus, das macht hier IMHO überhaupt keinen Sinn. Ist die Grafik denn mit float: definiert? Jedenfalls kannst du das align= herausnehmen, hat dort nichts verloren.
Ich behaupte also immer noch es liegt nicht am JS sondern am CSS!
Ja, ich sehe es. Für eine Lösung hätte ich aber gerne eine aktuelle Adresse ;)
LG Orlando