Laufzeitfehler in Microsoft JScript
Reiner Wirth
- javascript
0 Struppi0 Reiner Wirth0 Struppi
Hallo,
bei
function stopSound(){
parent.soundfrm.location.href = "../Sound1/stille.html";
}
meldet mein Microsoft Debugger:
Laufzeitfehler in Microsoft JScript: 'parent.soundfrm.location' ist Null oder kein Objekt
"soundfrm" ist der Name des Frames.
Bei Firefox und Safari tuts, hat jemand eine Idee, muss ich vielleicht noch eine Variable definieren?
bei
function stopSound(){
parent.soundfrm.location.href = "../Sound1/stille.html";
}
bei
meldet mein Microsoft Debugger:
Laufzeitfehler in Microsoft JScript: 'parent.soundfrm.location' ist Null oder kein Objekt
solchen Problmen ist es immer sinnvoll sich die verwendeten Objekte mal ausgeben zu lassen:
alert(parent);
alert(parent.soundfrm);
alert(parent.soundfrm.location);
Struppi.
bei
function stopSound(){
parent.soundfrm.location.href = "../Sound1/stille.html";
}bei
meldet mein Microsoft Debugger:
Laufzeitfehler in Microsoft JScript: 'parent.soundfrm.location' ist Null oder kein Objektsolchen Problmen ist es immer sinnvoll sich die verwendeten Objekte mal ausgeben zu lassen:
alert(parent);
alert(parent.soundfrm);
alert(parent.soundfrm.location);Struppi.
Danke für den Hinweis,
habe ich gleich untersucht und stelle fest, dass alles so lange gut geht, bis dann plötzlich ein solcher Laufzeitfehler verhindert, dass die URL neu geladen wird.
alert(parent.soundfrm.location); hier ist dann Schluss der Veranstaltung, nachdem die URL zuvor mehrmals geladen werden konnte.
Ist denkbar, dass mein Code
event.cancelBubble = true;
Verwirrung stiftet und ich der Sache nochmals nachgehen muss oder ich die von Wahsaga vorgeschalgene Lösung verwenden sollte, die das bubbling abfängt, indem ich nach dem target suche beim Klicken?
Gruß Reiner
Danke für den Hinweis,
habe ich gleich untersucht und stelle fest, dass alles so lange gut geht, bis dann plötzlich ein solcher Laufzeitfehler verhindert, dass die URL neu geladen wird.
alert(parent.soundfrm.location); hier ist dann Schluss der Veranstaltung, nachdem die URL zuvor mehrmals geladen werden konnte.
Dann ist der Fehler irgendwo anders.
Ist denkbar, dass mein Code
event.cancelBubble = true;
Verwirrung stiftet und ich der Sache nochmals nachgehen muss oder ich die von Wahsaga vorgeschalgene Lösung verwenden sollte, die das bubbling abfängt, indem ich nach dem target suche beim Klicken?
nein.
Struppi.
alert(parent.soundfrm.location); hier ist dann Schluss der Veranstaltung, nachdem die URL zuvor mehrmals geladen werden konnte.
Dann ist der Fehler irgendwo anders.
Struppi.
der Fehler liegt an meiner Browserweiche,
ich müßte jetzt an der Weiche für den IE auf click oder dblclick testen und bin wieder mal zu doof.
ich lande in
var name_des_browsers;
function clickTimer(idEbene, xOff, yOff, idSound)
{
Ebene=idEbene;
Sound=idSound;
xO=xOff;
yO=yOff;
if (name_des_browsers == "Microsoft Internet Explorer") {
testIE(); return:
}
klicks++;
tout = setTimeout(function()
{if(klicks==1)
{
parent.soundfrm.location.href = Sound;
} else {
callDHTML(Ebene, xO, yO);
}
klicks = 0; }, 500);
}
klicks = 0;
function testIE (e);
if (!e) var e = window.event;
alert (e.type);
}
hier verstehe ich nicht, warum hier nur click "gemeldet" wird und nicht dblclick.
Bitte helft mir!
Reiner
mein letzer Post war leider voller Fehler und unübersichtlich, deshalb versuch ichs nochmal:
function clickTimer(idEbene, xOff, yOff, idSound) {
Ebene=idEbene;
Sound=idSound;
xO=xOff;
yO=yOff;
if (name_des_browsers == "Microsoft Internet Explorer") {
testIE(); return;
}
…etc.…
}
klicks = 0;
function testIE (e) {
if (!e) var e = window.event;
alert (e.type);
}
ich möchte aus einer Funktion, die ich nicht für den IE benutzen will, in eine testIE-Funktion springen, dort ermitteln, ob ein click oder dblclick aufgetreten ist und dann die Verzweigung click --> tue1 oder dblclick --> tue2 ausführen lassen; return;
Was ich nicht kann, ist der Test auf click oder dblclick zu testen, im Moment wird nur "click" gemeldet.
Kann jemand ein wenig helfen?
Reiner