Layer sichtbar bzw. unsichtbar machen

Hi zusammen!

Ich hab folgenden Code, welchen ich zum einblenden bzw. ausblenden von Layers benütze. Das ganze funzt auch recht gut, aber beim Opera blendet er den Layer nur ein und ned mehr aus…

Hat mir jemand nen Tipp woran es scheitert ?

function ShowNews(){
 if(document.layers){
 //Netscape 4
 if(document.news.visibility=="visible") {
 document.news.visibility="hidden"; }
 else {
 document.news.visibility="visible";
 }
 }
 if(document.all){
 //Internet Explorer
 if(document.all.news.style.visibility=="visible") {
 document.all.news.style.visibility="hidden"; }
 else {
 document.all.news.style.visibility="visible";
 }
 }
 if(!document.all && document.getElementById){
 //Netscape 6
 if(document.getElementById("news").style.visibility=="visible") {
 document.getElementById("news").style.visibility="hidden"; }
 else {
 document.getElementById("news").style.visibility="visible";
 }
 }
}

Danke & Gruss
Chris

Hallo Chris,

eine Möglichkeit wäre beim ein Script zu erstellen, welches Dir den Zustand anzeigt.

function ShowNews(){
 var cVisibility="";
 if(document.layers){
 //Netscape 4
 cVisibility=document.news.visibility;

 if(document.news.visibility=="visible") {
 document.news.visibility="hidden"; }
 else {
 document.news.visibility="visible";
 }
 }
 if(document.all){
 //Internet Explorer
 cVisibility=document.all.news.style.visibility;
 if(document.all.news.style.visibility=="visible") {
 document.all.news.style.visibility="hidden"; }
 else {
 document.all.news.style.visibility="visible";
 }
 }
 if(!document.all && document.getElementById){
 //Netscape 6
 cVisibility=document.getElementById("news").style.visibility;
 if(document.getElementById("news").style.visibility=="visible")
{

document.getElementById("news").style.visibility="hidden"; }
 else {

document.getElementById("news").style.visibility="visible";
 }
 }
alert(cVisibility);
}

Ich habe es nicht getestet, aber es sollte keine Probleme machen.

Gruß
Christian