Skript funktioniert nur nach Zeilenumbruch im Quellcode
Marc Oh
- javascript
Hallöchen, miteinander!
Ich habe bei einem Projekt mehrmals in einer Datei ein einzeilige Anweisung.
Nun habe ich beim Ändern einmal diese JS-Zeile inklusive der HTML-Kommentarzeichen in eine Zeile getan
(einfach den Zeilenumbruch rausgelöscht). Danach wird diese JS-Anweisung nicht mehr ausgeführt!
Hier der funktionierende <script>-Bereich:
<script language="Javascript">
<!--
if (parent.Menu.location.href != "support_menu.html") parent.Menu.location.href = "support_menu.html"; // -->
</script>
Und so geht's nicht mehr:
<script language="Javascript">
<!-- if (parent.Menu.location.href != "support_menu.html") parent.Menu.location.href = "support_menu.html"; // -->
</script>
Weder NN noch IE führen die Anweisung im zweiten Fall aus! Wieso das?
...auch "Javascript1.1" o.ä. nützt nix...
MfG, Marc Oh
Hi,
<!-- if (parent.Menu.location.href != "support_menu.html") parent.Menu.location.href = "support_menu.html"; // -->
Weder NN noch IE führen die Anweisung im zweiten Fall aus! Wieso das?
weil "<!--" auch im <script>-Bereich als Kommentarzeile interpretiert wird.
Cheatah
weil "<!--" auch im <script>-Bereich als Kommentarzeile interpretiert wird.
Häh? Wieso das?
Ich hab' noch nirgends eine andere Angabe gefunden, als dass "/* Kommentar */" oder "// Kommentar" so interpretiert wird!
Der JS-Interpreter sollte das <!-- ja eigentlich ignorieren!
lg, Marc Oh
Hi,
weil "<!--" auch im <script>-Bereich als Kommentarzeile interpretiert wird.
Häh? Wieso das?
weil sonst Clients, die <script> nicht kennen, den Inhalt anzeigen würden.
Ich hab' noch nirgends eine andere Angabe gefunden, als dass "/* Kommentar */" oder "// Kommentar" so interpretiert wird!
Der Beginn des HTML-Kommentars ist gewissermaßen ein Spezialfall. Es ist zwingend notwendig, daß dieser in einem <script>-Bereich erlaubt ist und auch als Kommentar gewertet - also vom Script-Interpreter ignoriert wird.
Der JS-Interpreter sollte das <!-- ja eigentlich ignorieren!
Ja, tut er doch auch. Genau wie den Rest der Zeile.
Cheatah