visibility:collapse führt im IE zum Fehler

chickenwings

Erfahrenes Mitglied
Hallo,

ich versuche gerade ein Teil einer Tabelle, genauer ein <TR> per Klick zum ausfahren zu bewegen. Leider führt mein Versuch im IE zum Fehler, daß die Visibility-Eigenschaft nicht gefunden wurde und ungültiges Argument:
Meine Tabelle:
Code:
<TABLE border="0">
<TR>
	<TD colspan="2"><a href="javascript:expandOptions()"><img id="down3" src="../images/s_desc.png" border="0"></a>&nbsp;<a href="javascript:expandOptions()" id="options">öffnen</a></TD>
</TR>
<TR id="expandoptions" style="visibility:collapse;">
	<td>
               ....
       </td>
</TR>
</TABLE>

Meine Javascript-Funktion sieht so aus:
Code:
function expandTeaserEditor() {
	
	if (document.getElementById("expandteaser").style.visibility == "visible"){
		document.getElementById("expandteaser").style.height = "1px";
		document.getElementById("expandteaser").style.visibility = "collapse";
		document.getElementById("down2").src = "../images/s_desc.png";
		document.getElementById("teaser").innerHTML = "aufklappen";		
	}else{
		document.getElementById("expandteaser").style.height = "102px";
		document.getElementById("expandteaser").style.visibility = "visible";
		document.getElementById("down2").src = "../images/s_asc.png";
		document.getElementById("teaser").innerHTML = "schliessen";
	}
}
Der Fehler tritt im Else-Zweig auf.
Im Firefox funktionierts prima. Was kann das Problem sein.
Im Übrigen führt selbiges Beispiel bei selfhtml zum selben Fehler.

Jemand eine Idee, wie man das reparieren kann?

Grüsse,
chickenwings
 
Anscheindend kennt der IE diesen Wert für visibility nicht(ich bis heute auch nicht :))

Anstatt die visibility zu manipulieren, versuche es mal über display.
Um auszublenden, weise 'none' als Wert zu, zum Anzeigen eine leere Zeichenkette.
 
Hi.

Damit es mit allen gängigen Browsern funktioniert:
Javascript:
function ChangeRowVisibility(strVisibility, intRowIndex)
{
if(navigator.product == "Gecko" && navigator.productSub && navigator.productSub > "20041010" && (navigator.userAgent.indexOf("rv:1.8") != -1 || navigator.userAgent.indexOf("rv:1.9") != -1))
/* Mozilla 1.8a1+; see bug 77019 and bug 242368; must be higher than 1.7.x
Mozilla 1.8a2 supports accordingly dynamic collapsing of rows in both border-collapse models
but not Mozilla 1.7.x */
{
document.getElementById("idtable").rows[intRowIndex].style.visibility = strVisibility;
}
else if(strVisibility == "visible")
 {
 if(document.all && document.compatMode && document.compatMode == "CSS1Compat" && !window.opera)
 {
 document.getElementById("idtable").rows[intRowIndex].style.display = "block";
 }
 else if(document.getElementById && document.getElementById("idtable").rows)
 // Mozilla prior to 1.8a2, Opera 7.x and MSIE 5+
 {
 document.getElementById("idtable").rows[intRowIndex].style.display = "table-row";
 };
 }
else if(strVisibility == "collapse")
 {
 document.getElementById("idtable").rows[intRowIndex].style.display = "none";
 };
}
Kopiert von http://www.gtalbot.org/DHTMLSection/DynamicTableFormatting.html

Gruß
 

Neue Beiträge

Zurück