Als Fehlermeldung kommt immer, wenn ich die Javascript
Funktion aufrufe: "Objekt erwartet"
die Funktion wird an mehreren Stellen bei mouseover aufgerufen,
der Fehler bezieht sich immer auf den Aufruf.
Wie wär's mit Fehlerprüfung?
<script type="text/javascript">
<!--
function zeigen(obj)
{
var ns4;
var ie4;
var ie5;
var v6;
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
ie5= (document.all)?true:false
v6 = (document.getElementById)? true:falseif (ns4)
{
document.layers[obj].visibility = "show";
}
else if (v6)
{
document.getElementById(obj).style.visibility = "visible";
}
else if (ie4)
{
document.all[obj].style.visibility = "visible";
}
return eval(obj);
}function verbergen(obj)
{
var ns4;
var ie4;
var ie5;
var v6;
ns4 = (document.layers)? true:false;
ie4 = (document.all)? true:false;
ie5= (document.all)?true:false;
v6 = (document.getElementById)? true:false;if (document.layers)
{
document.layers[obj].visibility = "hide";
}
else if (document.getElementById)
{
document.getElementById(obj).style.visibility = "hidden";
}
else if (document.all[obj])
{
document.all[obj].style.visibility = "hidden";
}
return eval(obj);
}
//-->
</script>
diese Prüfungen sind völlig unnötig!
und eval(obj) ruft vermutlich den Fehler hervor wozu soll das dienen?
<script type="text/javascript">
<!--
function verbergen(obj)
{
var layer = getObj(obj);
if(!layer) return false;
if (document.layers) layer.visibility = "hide";
else layer.style.visibility = "hidden";
return true;
}
function zeigen(obj)
{
var layer = getObj(obj);
if(!layer) return false;
if (document.layers) layer.visibility = "show";
else layer.style.visibility = "visible";
return true;
}
function getObj(obj)
{
if (document.layers)
return document.layers[obj];
else if(document.getElementById)
return document.getElementById(obj);
else if(document.all)
return document.all[obj];
else
return null;
}
Das sollte funktionieren.
Struppi.