Supportnet / Forum / Skripte(PHP,ASP,Perl...)
JavaScript und Problem bei Firefox
Frage
Hallo, ich nutze folgendes Java Script. Im IE funktioniert es wunderbar aber in FF nichts, FF verweist immer auf die Zeile 44:
eval(doc + layerName + sty + ".left = " + (eval(FromLeft) + 15))
[code]<script language =" javascript">
<!--
var ie = document.all ? 1 : 0
var ns = document.layers ? 1 : 0
if(ns){doc = "document."; sty = ""}
if(ie){doc = "document.all."; sty = ".style"}
var initialize = 0
var Ex, Ey, topColor, subColor, ContentInfo
if(ie){
Ex = "event.x"
Ey = "event.y"
topColor = "#354555"
subColor = "#C0C0C0"
}
if(ns){
Ex = "e.pageX"
Ey = "e.pageY"
window.captureEvents(Event.MOUSEMOVE)
window.onmousemove=overhere
topColor = "#354555"
subColor = "#C0C0C0"
}
function MoveToolTip(layerName, FromTop, FromLeft, e){
if(ie){eval(doc + layerName + sty + ".top = " + (eval(FromTop) + document.body.scrollTop))}
if(ns){eval(doc + layerName + sty + ".top = " + eval(FromTop))}
eval(doc + layerName + sty + ".left = " + (eval(FromLeft) + 15))
}
function ReplaceContent(layerName){
if(ie){document.all[layerName].innerHTML = ContentInfo}
if(ns){
with(document.layers[layerName].document)
{
open();
write(ContentInfo);
close();
}
}
}
function Activate(){initialize=1}
function deActivate(){initialize=0}
function overhere(e){
if(initialize){
MoveToolTip("ToolTip", Ey, Ex, e)
eval(doc + "ToolTip" + sty + ".visibility = ´visible´")
}
else{
MoveToolTip("ToolTip", 0, 0)
eval(doc + "ToolTip" + sty + ".visibility = ´hidden´")
}
}
function EnterContent(layerName, TTitle, TContent){
ContentInfo = ´<table border="0" width="350" cellspacing="0" cellpadding="0">´+
´<tr><td width="100%" bgcolor="#000000">´+
´<table border="0" width="100%" cellspacing="1" cellpadding="0">´+
´<tr><td width="100%" bgcolor=´+topColor+´>´+
´<table border="0" width="90%" cellspacing="0" cellpadding="0" align="center">´+
´<tr><td width="100%">´+
´<font class="tooltiptitle"> ´+TTitle+´</font>´+
´</td></tr>´+
´</table>´+
´</td></tr>´+
´<tr><td width="100%" bgcolor=´+subColor+´>´+
´<table border="0" width="90%" cellpadding="0" cellspacing="1" align="center">´+
´<tr><td width="100%">´+
´<font class="tooltipcontent">´+TContent+´</font>´+
´</td></tr>´+
´</table>´+
´</td></tr>´+
´</table>´+
´</td></tr>´+
´</table>´;
ReplaceContent(layerName)
}
//-->
</script> [/code]
Jemand eine IDee?
Antwort 1 von Road-Runner
Hallo,
Schau mal hier ---> Klick
Könnte sein, dass es daran liegt. Ich bin aber nicht so der Javascript-Experte, deshalb kann es auch durchaus sein, dass ich mich irre.
Aber nachschauen kostet ja nix.
Gruss
Road-Runner
Schau mal hier ---> Klick
Könnte sein, dass es daran liegt. Ich bin aber nicht so der Javascript-Experte, deshalb kann es auch durchaus sein, dass ich mich irre.
Aber nachschauen kostet ja nix.
Gruss
Road-Runner
Antwort 2 von rfb
3 Ideen:
setz doch mal die fehlenden ; an die Zeilenenden, damit der Interpreter weiss, wo die Anweisung zu ende ist
ersetz mal den ganzen eval-Kram durch das, was die div. Variablen darin bedeuten
versuch statt den veralteten"layer" und "all" das allen neueren Browsern bekannte node-object zu verwenden
ansonsten: ohne Kontext kann ich auch nicht weiter raten, was alles an dem Script dem Firefox nicht gefällt
setz doch mal die fehlenden ; an die Zeilenenden, damit der Interpreter weiss, wo die Anweisung zu ende ist
ersetz mal den ganzen eval-Kram durch das, was die div. Variablen darin bedeuten
versuch statt den veralteten"layer" und "all" das allen neueren Browsern bekannte node-object zu verwenden
ansonsten: ohne Kontext kann ich auch nicht weiter raten, was alles an dem Script dem Firefox nicht gefällt

