Variablen verlieren ihren Wert in NN 4.x
uepselon
- javascript
Hallo,
ich generiere mit der document.write Funktion neuen
HTML Code.
Die Funktion sieht z.b: so aus:
mach_html()
{
globale_var = "etwas"
document.write('<HTML> ...');
if (globale_var == ...) bringt nen Fehler in NN da er ab jetzt die Variable nicht mehr kennt.
}
nachdem ich das neu Dokument begonnen habe kann ich einfach nicht
mehr auf die alten variablen zugreifen.
Kann hier evtl. der Fehler sein:
Die Funktion mach_html ist in einer externen js Datei gespeichert.
in der Funktion selbst wird diese Datei per document.write wieder
in die neue Seite eingebunden. Kommt da evtl. Netscape mit den Variablen durcheinander?
Gruß
uepselon
ich generiere mit der document.write Funktion neuen
HTML Code.
Die Funktion sieht z.b: so aus:
mach_html()
{
globale_var = "etwas"
document.write('<HTML> ...');
Also mit Verlaub, diese Aktion macht überhaupt keinen Sinn. Javascript-Code muß innerhalb von <html></html> stehen. Mit Deiner Anweisung oben schreibst Du also innerhalb von einem <html>-Block noch einen, das ist einfach nur Unfug. Und wenn der Javascript-Code außerhalb eines <html>-Blocks steht, ist Deine HTML-Datei schlichtweg falsch.
IMHO eigentlich kein Wunder, daß ein Browser dabei durcheinander kommt. Was willst Du denn damit überhaupt bezwecken?
Gruß,
soenk.e
Hallo,
Also mit Verlaub, diese Aktion macht überhaupt keinen Sinn. Javascript-Code muß innerhalb von <html></html> stehen. Mit Deiner Anweisung oben schreibst Du also innerhalb von einem <html>-Block noch einen, das ist einfach nur Unfug. Und wenn der Javascript-Code außerhalb eines <html>-Blocks steht, ist Deine HTML-Datei schlichtweg falsch.
Es wird ja ein neus Dokument, erzeugt, die Beispiel version ist
stark vereinfacht. Die seite wird über document.write komplett neu
gesetzt. dazu sind auch noch ein paar notwendige Abfragen drin, die
aber nicht mehr greifen nachdem das neue Dokument anfängt.
IMHO eigentlich kein Wunder, daß ein Browser dabei durcheinander kommt. Was willst Du denn damit überhaupt bezwecken?
Das will ich damit bezwecken:
<members.lycos.de/tselb/graph.html> - funktioniert bisher nur offline im IE
<members.lycos.de/tselb/demo_sinx.html> - So kanns dann nach dem document.write ... aussehen.
Gruß
uepselon
Hallo,
Hoppla, kleiner Linkfehler
http://members.tripod.de/tselb/graph.html - funktioniert bisher nur offline im IE
http://members.tripod.de/tselb/demo_sinx.html - So kanns dann nach dem document.write ... aussehen.
Gruß
uepselon
Also mit Verlaub, diese Aktion macht überhaupt keinen Sinn. Javascript-Code muß innerhalb von <html></html> stehen. Mit Deiner Anweisung oben schreibst Du also innerhalb von einem <html>-Block noch einen, das ist einfach nur Unfug. Und wenn der Javascript-Code außerhalb eines <html>-Blocks steht, ist Deine HTML-Datei schlichtweg falsch.
Es wird ja ein neus Dokument, erzeugt, die Beispiel version ist
stark vereinfacht. Die seite wird über document.write komplett neu
gesetzt.
Wenn Du quasi die gesamte Datei neu schreibst, ziehst Du Dir aber für meine Begriffe selbst den Teppich unter dem Füßen weg. Schließlich überschreibst Du damit auch Deinen Javascript-Code, sowohl direkt in der Datei stehenden als auch indirekt über das src-Attribut eingebundene Sachen.
Probier's mit document.open(). In Stefan's SelfHTML-Beispiel löscht das jedenfalls ganz prima den Fensterinhalt.
Gruß,
soenk.e
Hallo,
hier das Problem noch etwas genauer auf den Punkt gebracht:
function make_html()
{
thevar = 'Halli Hallo';
if (document)
document.close();
document.open();
document.write(thevar);
document.close();
}
Im IE wird Halli Hallo ausgegeben wenn die Funktion aufgerufen wird.
NN kennt hingegen thevar nicht mehr, wie kann ich jedoch diesen Wert
in NN ausgeben.
Gruß
uepselon