Hallo Alle,
hallo Christoph,
Ich habe da heute was gebastelt, das in der einen Version bei Netscape geht (die Farbe zumindest) und in der anderen nicht.
Dabei kann ich keinen relavanten Unterschied finden. Habe auch schon nach vergessenen Klammern oder Semis gesucht. Irgendwie bin ich blind heute Abend.
Die Version die geht:
<html>
<head>
<title>Tabellen-Spiele</title>
<script language="JavaScript" type="text/javascript">
<!--
function wxlBgCol(id,farbe)
{
if (document.all)
document.all[id].style.backgroundColor=farbe;
else
if (document.getElementById)
document.getElementById(id).style.backgroundColor=farbe;
else
if (document.layers)
document.layers[id].bgColor=farbe;
}
function getText(id)
{
if (document.all)
{
alert(document.all[id].innerText);
if (document.all[id].innerText=='ganz neuer Text')
document.all[id].innerText='noch ein anderer Text';
else
document.all[id].innerText='ganz neuer Text';
}
else
if (document.getElementById)
alert(document.getElementById(id).innerText);
else
if (document.layers)
alert(document.layers[id].innerText);
}
//-->
</script>
</head>
<body>
<table border="1">
<tr>
<td id="Zelle1" style="position:relative" bgcolor="white">
<a href="javascript:void(0)"
onMouseOver="wxlBgCol('Zelle1','maroon')"
onMouseOut="wxlBgCol('Zelle1','khaki')">viel Holz<br> </a>
</td>
<td> </td>
</tr>
<tr>
<td> </td>
<td id="Zelle4" style="position:relative" bgcolor="white">
<a href="javascript:void(0)"
onMouseOver="wxlBgCol('Zelle4','seashell')"
onMouseOut="wxlBgCol('Zelle4','black')">wenig Holz<br> </a>
</td>
</tr>
</table>
<form action="">
<input type="button" value="Farbe 1" onClick="wxlBgCol('Zelle1','#FF0000')"><br>
<input type="button" value="Text 1" onClick="getText('Zelle1')">
<form>
</body>
</html>
Nun die Version, die immer einen JavaScriptError auslöst bei NS
<html>
<head>
<title>Tabellen-Spiele</title>
<script language="JavaScript" type="text/javascript">
<!--
function wxlBgCol(id,farbe)
{
if (document.all)
document.all[id].style.backgroundColor=farbe;
else
if (document.getElementById)
document.getElementById(id).style.backgroundColor=farbe;
else
if (document.layers)
document.layers[id].bgColor=farbe;
}
function getText(id)
{
if (document.all)
{
alert(document.all[id].innerText);
if (document.all[id].innerText=='ganz neuer Text')
document.all[id].innerText='noch ein anderer Text';
else
document.all[id].innerText='ganz neuer Text';
}
else
if (document.getElementById)
alert(document.getElementById(id).innerText);
else
if (document.layers)
alert(document.layers[id].innerText);
}
//-->
</script>
</head>
<body>
<table border="1">
<tr>
<td id="Zelle1" style="postion:relative" bgcolor="white">
Text der ersten Zelle
</td>
<td id="Zelle2">
Text der zweiten Zelle
</td>
</tr>
<tr>
<td id="Zelle3">
Text der dritten Zelle
</td>
<td id="Zelle4">
Text der vierten Zelle
</td>
</tr>
</table>
<form action="">
<input type="button" value="Zelle 1" onClick="getText('Zelle1')">
<input type="button" value="Zelle 2" onClick="getText('Zelle2')">
<input type="button" value="Zelle 3" onClick="getText('Zelle3')">
<input type="button" value="Zelle 4" onClick="getText('Zelle4')">
<br>
<input type="button" value="Farbe 1" onClick="wxlBgCol('Zelle1','#FF0000')">
<input type="button" value="Farbe 2" onClick="wxlBgCol('Zelle1','#00FF00')">
<input type="button" value="Farbe 3" onClick="wxlBgCol('Zelle1','#0000FF')">
<input type="button" value="Farbe 4" onClick="wxlBgCol('Zelle1','#777777')">
</form>
</body>
</html>
Wo ist denn DA der Fehler?
Außerdem wüßte ich gerne, ob es bei NS auch einen innerText gibt.
Gruß
Tom