Cristoph Müller: Hilfe mein Quellcode blinkt!

Hallihallo und Hilfe ich werde verückt
Sind das erte Anzeichen von Wahnsinn oder wieso sehe ich in Netscape 4.75 einen Teil des QUELLCODES blinken?

Hab das mehrfach überprüft, auch auf mehreren Rechnern.
Bin jetzt ich verückt oder Netscape?

Hier der eintsprechende Quellcode (der eigentliche Code ist viel größer, aber ich habs mal darauf reduziert):
 Einfach speichern, in Netscape 4.75 öffnen und den Quellcode anschauen.

<html>

<head>
<title>test</title>

</HEAD>

<BODY topmargin="0" leftmargin="0"  >

<A HREF="test"  onmouseover="lnr=1;ltext='Home';ltop=ilayerlink1.pageY;lleft=ilayerlink1.pageX;mover('link1')" xonmouseout="mout('link1')" class="up1"  >Home</A><BR>
<A HREF="test"  onmouseover="lnr=2;ltext='Energieversorgungs-<br>technik';ltop=ilayerlink2.pageY;lleft=ilayerlink2.pageX;mover('link2')"  class="up2"  >Energieversorgungs-<BR>technik</A><BR>
<A HREF="test"  onmouseover="lnr=3;ltext='Kommunikations-<br>technik';ltop=ilayerlink3.pageY;lleft=ilayerlink3.pageX;mover('link3')"  class="up3"  >Kommunikations-<BR>technik</A><BR>
<A HREF="test"  onmouseover="lnr=4;ltext='Industrie-/<br>Anlagentechnik';ltop=ilayerlink4.pageY;lleft=ilayerlink4.pageX;mover('link4')"  class="up4"  >Industrie-/<BR>Anlagentechnik</A><BR>
<A HREF="test"  onmouseover="lnr=5;ltext='Technische<br>Gebäudeausrüstung/<br> -Gebäudemanagement';ltop=ilayerlink5.pageY;lleft=ilayerlink5.pageX;mover('link5')"  class="up5"  >Technische<BR>Gebäudeausrüstung/<BR> -Gebäudemanagement</A><BR>
<A HREF="test"  onmouseover="lnr=6;ltext='Die GAH-Gruppe';ltop=ilayerlink6.pageY;lleft=ilayerlink6.pageX;mover('link6')"  class="up1"  >Die GAH-Gruppe</A><BR>
<A HREF="test"  onmouseover="lnr=8;ltext='Kontakt';ltop=ilayerlink8.pageY;lleft=ilayerlink8.pageX;mover('link8')"  class="up1"  >Kontakt</A><BR>
<A HREF="test"  onmouseover="lnr=7;ltext='Offene Stellen';ltop=ilayerlink7.pageY;lleft=ilayerlink7.pageX;mover('link7')"  class="up1"  >Offene Stellen</A><BR>
<A HREF="test"  onmouseover="lnr=9;ltext='News';ltop=ilayerlink9.pageY;lleft=ilayerlink9.pageX;mover('link9')"  class="up1"  >News</A><BR>

</BODY>

</HTML>

Ich hatte das Problem schon mehrfach, konnte es aber jetzt mal reproduzierbar festnageln

Was ich auch mal hatte, aber leider jetzt gerade nicht wieder finde, war eine Seite, in der Netscape per Zufall im Quellcode einen Umbruch eingefügt hat, immer an die gleiche Stelle plusminus 10 Zeichen.- Wenn der Umbruch in einem Tag war, dann hat dieses Tag auch wirklich nicht mehr funktioniert. Mein Bugfix war, ein längeres Komentar an die Stelle zu setzen. Hat irgendjemand sowas schon mal erlebt?

Achja, mein Betriebssystem ist Windows 2000

  1. Morgen Christoph,

    Hab das mehrfach überprüft, auch auf mehreren Rechnern.
    Bin jetzt ich verückt oder Netscape?

    Das ist der Interne HTML-Parser von Netscape der Fehler meldet.

    Der Fehler liegt daran das Netscape denkt das du den Tag abgeschlossen hast.
    onmouseover="lnr=2;ltext='Energieversorgungs-<br>technik
                                                                         ^^^^
    gruesse
      jens mueller

    1. Morgen nochmal,

      onmouseover="lnr=2;ltext='Energieversorgungs-<br>technik

      ^^^^
      So ist's richtig.

      gruesse
        jens mueller

      1. Vielen Dank, ich bin also noch normal

        Soll mich das Blinken also auf einen Fehler im Quellcode hinweisen?
        Die Idee klingt ja gar nicht so dumm, wenn sie auch funktionieren würde

        cu

        1. Hi,

          Soll mich das Blinken also auf einen Fehler im Quellcode hinweisen?

          exakt.

          Die Idee klingt ja gar nicht so dumm, wenn sie auch funktionieren würde

          Wieso funktioniert sie Deiner Meinung nach nicht? Die spitzen Klammern mußt Du durch ihre HTML-Entitäten < und > ersetzen.

          Cheatah

          1. Die Idee klingt ja gar nicht so dumm, wenn sie auch funktionieren würde

            Wieso funktioniert sie Deiner Meinung nach nicht? Die spitzen Klammern mußt Du durch ihre HTML-Entitäten < und > ersetzen.

            In dem Fall übergebe ich ja einen String an ein Script, und ob in dem String jetzt irgendwelche Sonderzeichen vorkommen sollte dem Browser doch egal sein, oder?
            Sonst müsste ich das ja im Script wieder zurückersetzen, denn ich brauche die spitzen Klammern in dem String

            1. Moin auch!

              In dem Fall übergebe ich ja einen String an ein Script, und ob in dem String jetzt irgendwelche Sonderzeichen vorkommen sollte dem Browser doch egal sein, oder?
              Sonst müsste ich das ja im Script wieder zurückersetzen, denn ich brauche die spitzen Klammern in dem String

              Nein, Du missverstehst da etwas. Was Du innerhalb der Anfuehrungszeichen schreibst, ist in erster Linie mal der Wert eines Attributes in HTML. Das hat noch NICHTS mit JavaScript zu tun. In den Attributwerten DARFST Du die Zeichen < und > nicht verwenden (insbesondere letzteres). Du musst sie mit < bzw. > maskieren, wohlgemerkt NUR, damit der Parser nicht durcheinanderkommt. Wenn der HTML-Text analysiert (geparst) wurde, dann wurde der Attributwert herausgeloest und die darin enthaltenen Entity-Referenzen (sowas wie <) wurden in das damit gemeinte Zeichen uebersetzt. Und erst jetzt erhaelt der Attribut-Wert seine bestimmungsgemaesse Bedeutung. Erst jetzt wird also entschieden, ob das z.B. der ALT-Text eines IMG ist, oder ein Stueck JavaScript in einem Event-Handler. Erst jetzt, wo das > laengst wieder zum > aufgeloest wurde, wird das ganze an die JavaScript-Engine verfuettert.

              Das Blinken bedeutet einfach, dass der Parser sich hier nicht sicher ist, ob das > schon das Tag-Ende sein soll oder noch zum Attribut-Wert gehoert und er daher raten muss, was natuerlich grundsaetzlich nicht gut ist. Meistens klappt's allerdings trotzdem. Tja, das ist eigentlich schon alles.

              Calocybe - jetzt mit fetten 19 Zoll! :-)  (Ich kann gar nicht lange genug reinstarren *g*)

              1. Hi,

                In den Attributwerten DARFST Du die Zeichen < und > nicht verwenden (insbesondere letzteres).

                öhm... insbesondere ersteres :-)

                Um es noch mal anders zu sagen: Man nehme einen Link (oder <img>-Tag, z.B. con einem Counter) auf ein CGI-Script, mit Parametern. Das sieht dann oft so aus:

                <a href="bla.cgi?id=17&para=42&copy=no">

                Ein HTML-Parser, also z.B. ein Browser, wird sich das jetzt angucken und feststellen: "Oh, '&para'. Ich kenne eine Entität, die so heißt, also ersetze ich es. Und kurz danach '&copy' - wieder bekannt. Und ab dafür!"

                Das Ergebnis ist folgendes:

                <a href="bla.cgi?id=17¶=42©=no">

                Und das ist genau das, was der HTML-Parser tun _muß_! Um diesen scheinbaren(!) Fehler zu vermeiden, hätte der Link wie folgt aussehen müssen:

                <a href="bla.cgi?id=17&para=42&copy=no">

                Wenn jemand nicht versteht, warum das so sein muß: Schreib mal bitte einen <img>-Tag, in dessen alt-Attribut Anführungszeichen stehen. Erweiterung: Der alt-Text soll 'HTML-Entitäten wie z.B. """' lauten. Denk auch daran, daß die Seite auf Rechnern angezeigt wird, die an der Stelle des "Alphabets", wo wir das "ä" haben, ein anderes Zeichen hinterlegt haben.

                Chea "Erklär-Gepard :-)" tah

                1. This message was created automatically by mail delivery software.

                  A message that you sent could not be delivered to one or more of its
                  recipients. This is a permanent error. The following address(es) failed:

                  unor@rz.uni-karlsruhe.de:
                      unknown local-part "unor" in domain "rz.uni-karlsruhe.de"

                  ------ This is a copy of the message, including all the headers. ------

                  Return-path: michael@schroepl.net
                  Received: from nce2.hadiko.de (hadince2.hadiko.uni-karlsruhe.de [172.20.32.2])
                          by mailhost.rz.uni-karlsruhe.de with esmtp (Exim 3.16 #1)
                          id 158Rb4-0007kP-00; Fri, 08 Jun 2001 21:07:02 +0200
                  Received: from mailgate.rz.uni-karlsruhe.de (mailgate.rz.uni-karlsruhe.de [129.13.64.97])
                          by nce2.hadiko.de (8.9.3/8.9.3) with ESMTP id VAA26940
                          for Hajo@hadiko.de; Fri, 8 Jun 2001 21:07:01 +0200 (MET DST)
                  Received: from venedig.vcities.de (053.169.178.193.vcities.de [193.178.169.53])
                          by mailgate.rz.uni-karlsruhe.de with esmtp (Exim 3.16 #1)
                          id 158RaY-0004mt-00; Fri, 08 Jun 2001 21:06:30 +0200
                  Received: from ********* (***********)
                          by venedig.vcities.de (8.9.3/8.9.3/SuSE Linux 8.9.3-0.1) with ESMTP id UAA31328
                          for Hajo@hadiko.de; Fri, 8 Jun 2001 20:54:56 +0200

                  ...

                  To: Hajo@hadiko.de

                  Hi Cheatah,

                  <a href="bla.cgi?id=17&para=42&copy=no">
                  Ein HTML-Parser, also z.B. ein Browser, wird sich das jetzt angucken und feststellen: "Oh, '&para'. Ich kenne eine Entität, die so heißt, also ersetze ich es. Und kurz danach '&copy' - wieder bekannt. Und ab dafür!"

                  Ohne Semikolons in den Entities? (Netscape4?)

                  Viele Grüße
                        Michael

                  1. Hi,

                    unor@rz.uni-karlsruhe.de:
                        unknown local-part "unor" in domain "rz.uni-karlsruhe.de"

                    oh, gut zu wissen. Offenbar wurde mein Account gelöscht. Hm.

                    <a href="bla.cgi?id=17&para=42&copy=no">
                    Ein HTML-Parser, also z.B. ein Browser, wird sich das jetzt angucken und feststellen: "Oh, '&para'. Ich kenne eine Entität, die so heißt, also ersetze ich es. Und kurz danach '&copy' - wieder bekannt. Und ab dafür!"

                    Ohne Semikolons in den Entities? (Netscape4?)

                    Ohne Semikolon, ja. Versuch's mal bei http://validator.w3.org/.

                    Richtig problematisch ist es bei mir mal geworden, als ich einen Parameter namens "currency" eingesetzt hatte. Einige IEs haben das "&curren" darin doch tatsächlich durch das allgemeine Währungszeichen ersetzt (obwohl Buchstaben folgten!) - und unkodiert durch's Netz gejagt. Die Problematik ist also alles andere als theoretischer Natur.

                    Cheatah

                    1. unor@rz.uni-karlsruhe.de:
                          unknown local-part "unor" in domain "rz.uni-karlsruhe.de"

                      oh, gut zu wissen. Offenbar wurde mein Account gelöscht. Hm.

                      Mailzustellung fehlgeschlagen, zurueck zum Absender

                      From:
                              mailer-daemon@mx04.web.de

                      Fehlerhafte Adressen folgen:

                      hp@web.de ... Benutzer hat zuviele Mails auf dem Server.

                      1. Moin Michael und Cheatah,

                        unor@rz.uni-karlsruhe.de:
                            unknown local-part "unor" in domain "rz.uni-karlsruhe.de"
                        oh, gut zu wissen. Offenbar wurde mein Account gelöscht. Hm.

                        ist ja wohl auch schon ne Weile her, oder? ;)

                        hp@web.de ... Benutzer hat zuviele Mails auf dem Server.

                        hihi ;)

                        Viele Gruesse,

                        n.d.p.

                      2. Moin!

                        Fehlerhafte Adressen folgen:
                        hp@web.de ... Benutzer hat zuviele Mails auf dem Server.

                        Cheatah, sei ehrlich, Du hast sie absichtlich ewig nicht abgeholt, um uns zu beeindrucken. ;-)

                        So long

                        1. Hi,

                          hp@web.de ... Benutzer hat zuviele Mails auf dem Server.

                          Cheatah, sei ehrlich, Du hast sie absichtlich ewig nicht abgeholt, um uns zu beeindrucken. ;-)

                          klar doch *g*

                          Nee, eigentlich sollte die Adresse einfach nur auf hp@webde-ag.de weiterleiten, was sie offenbar nicht tut. Ich frag unsere Admins hier mal, was sie da nun wieder verbockt haben ;-)

                          Cheatah

                2. Herzlichen Dank!
                  Ich glaub jetzt hab ich es so ungefähr verstanden