Javascript-Error
Matthias Kleinekathoefer
Mahlzeit aus Hamburg!
Ich habe fuer ein Menue eine Browser-Abfrage geschrieben. Beim Internet-Explorer 3 kommt folgende Fehlermeldung: "Microsoft JScript runtime error. Objekt unterstuetzt diese Eigenschaft nicht."! Was habe ich falsch gemacht? Wie kann ich es bewerkstelligen, dass dieses Script auf allen Browsern laueft? Vielen Dank fuer Eure Hilfe.
Matthias Kleinekathoefer
Hier das Script:
<script LANGUAGE="Javascript">
<!--
{
NSalt=0, NSneu=0, MSIEalt=0, MSIEneu=0, javx=0;
if(navigator.appName == "Netscape")
{
if(eval(navigator.appVersion.substring(0,1)) < 4)
NSalt = 1;
else
NSneu = 1;
}
if(navigator.appName == "Microsoft Internet Explorer")
{
if(eval(navigator.appVersion.substring(0,1)) < 4)
MSIEalt = 1;
else
MSIEneu = 1;
}
if(MSIEalt==1)
{
javx=1;
}
}
app = navigator.appName;
ver = navigator.appVersion;
mac = ver.indexOf("Macintosh") > 0;
win = ver.indexOf("Win") > 0;
vnum = parseFloat(ver);
mouseOverOk = (((app == "Netscape") && (vnum >= 3 )) ||
((mac) && (app == "Microsoft Internet Explorer") && (vnum >= 3.01 )) ||
((win) && (app == "Microsoft Internet Explorer") && (vnum >= 4 )))
if (javx<1)
if(navigator.javaEnabled())
if (mouseOverOk)
{
navbar1on = new Image();
navbar1on.src = "buttons/startseite2.gif";
navbar1off = new Image();
navbar1off.src = "buttons/startseite1.gif";
}
function turnOn(imageName) {
if (document.images) {
document[imageName].src = eval(imageName + "on.src");
}
}
function turnOff(imageName) {
if (document.images) {
document[imageName].src = eval(imageName + "off.src");
}
}
// -->
</script>
Ich habe fuer ein Menue eine Browser-Abfrage geschrieben. Beim Internet-Explorer 3 kommt folgende Fehlermeldung: "Microsoft JScript runtime error. Objekt unterstuetzt diese Eigenschaft nicht."! Was habe ich falsch gemacht? Wie kann ich es bewerkstelligen, dass dieses Script auf allen Browsern laueft? Vielen Dank fuer Eure Hilfe.
Es sieht so aus, als koenne das was du willst der MSIE3 nicht, was kein Wunder ist, da er mit JavaScript noch nicht viel am Hut hat wie Netscape3 z.B.
Allerdings waeree es auch hilfreich, wenn du angibst in welcher Zeile der MSIE3 meckert. Dann koennte ich eine genauere Antwort geben
Es sieht so aus, als koenne das was du willst der MSIE3 nicht, was kein Wunder ist, da er mit JavaScript noch nicht viel am Hut hat wie Netscape3 z.B.
Allerdings waeree es auch hilfreich, wenn du angibst in welcher Zeile der MSIE3 meckert. Dann koennte ich eine genauere Antwort geben
Hallo Thomas,
das nenne ich schnelle Antwort. Folgende Zeile ist vom Fehler betroffen:
if(navigator.javaEnabled())
Ich moechte eigentlich nur erreichen, dass die Bilder nicht vorgeladen werden, wenn der Brower kein Java kann, oder es ausgeschaltet ist.
Bis dann,
Matthias
Hallo Matthias,
Ich moechte eigentlich nur erreichen, dass die Bilder nicht vorgeladen werden, wenn der Brower kein Java kann, oder es ausgeschaltet ist.
Dafuer braucht's kein Java, nur JavaScript. Die Abfrage kannst Du dir also schenken.
viele Gruesse
Stefan Muenz
Ich moechte eigentlich nur erreichen, dass die Bilder nicht vorgeladen werden, wenn der Brower kein Java kann, oder es ausgeschaltet ist.
Dafuer braucht's kein Java, nur JavaScript. Die Abfrage kannst Du dir also schenken.
Stimmt.
Das, was man pruefen muss, ist lediglich, ob der Browser das Image-Objekt kennt.
Und das geht ganz einfach mit
if (document.images)
Bisschen verwunderlich fuer mich, Dein Code.
In den Funtktionen tust Du genau das. beim Definieren der Objekte machst Du diese Klimmzuege mit der Browserabfrage. Warum?
So geht's doch auch:
if (document.images)
{
navbar1on = new Image();
navbar1on.src = "buttons/startseite2.gif";
navbar1off = new Image();
navbar1off.src = "buttons/startseite1.gif";
}
Christine
das nenne ich schnelle Antwort. Folgende Zeile ist vom Fehler betroffen:
if(navigator.javaEnabled())
Tja, da haben wir es ja schon. Die Methode navigator.javaEnabled() kennt der MSIE leider erst ab Verion 4. Eine andere Loesung fuer dein Problem faellt mir allerdings spontan auch nicht ein.