Henry: Problem mit dem NC 6.1beta

Hallo,

kann mir jemand sagen, warum folgendes Script im IE 5.5 geht und im NC 6.1beta nicht?

<html>
<head>
<title>Test</title>
<script>
function Change(id)
{
  document.getElementById(id).innerHTML="<a href='t.htm'>neuer Link</a>";
}
</script>
</head>
<body>
<div id="div1" onclick="Change(id)" style="position:absolute; top:10px; left:20px">Anklicken!</div>
</body>
</html>

Gruß Henry

  1. Ach ja, "t.htm" ist die Datei, in der genau obige Zeilen stehen! Die Datei soll sich alsu selber wieder aufrufen.

    Henry

  2. Hallo Henry,

    kann mir jemand sagen, warum folgendes Script im IE 5.5 geht und im NC 6.1beta nicht?

    <html>
    <head>
    <title>Test</title>
    <script>
    function Change(id)
    {
      document.getElementById(id).innerHTML="<a href='t.htm'>neuer Link</a>";
    }
    </script>
    </head>
    <body>
    <div id="div1" onclick="Change(id)" style="position:absolute;

    .................................^^^^
    WTH übergibst du da eigentlich, ich weiß nicht ob das legal ist, Ich würde es mit Change('div1') machen.

    top:10px; left:20px ">Anklicken!</div>

    ......................;
    außerdem vielleicht der hier, ist aber eigentlich ein Schönheitsfehler.

    alles ungetestet, ich habe keine 601 beta

    Bye Ed X

    1. Hallo Ed X,

      natürlich muß es Change('div1') heißen (war aber nur ein Schreibfehler im Posting). Das ";" am Ende muß wohl nicht unbedingt stehen, es ändert aber auch nichts. Das Script stammt übrigens in etwas komplizierter Form aus einem Script, dass auf dem NC 6 ohne Probleme lief.

      Gruß Henry

      1. Hallo Henry,

        natürlich muß es Change('div1') heißen (war aber nur ein Schreibfehler im Posting). Das ";" am Ende muß wohl nicht unbedingt stehen, es ändert aber auch nichts. Das Script stammt übrigens in etwas komplizierter Form aus einem Script, dass auf dem NC 6 ohne Probleme lief.

        <html>
        <head>
        <title>Test</title>
        <script>
        function Change(id)
        {
        document.getElementById(id).innerHTML="<a href='t.htm'>Link</a>";

        ..................................................^.....^
        Vielleicht mag er die Dinger ja nicht

        document.getElementById(id).innerHTML="<a href="t.htm">neuer Link</a>";

        }
        </script>
        </head>
        <body>
        <div id="div1" onclick="Change(id)" style="position:absolute; top:10px; left:20px">Anklicken!</div>
        </body>
        </html>

        was funktionier eigentlich nicht? Was steht in der JS-Console?

        Ansonsten Beta, wie der Name schon sagt......

        Bye Ed X

        1. Hallo Ed X,

          die Schreibweise mit ' ist meiner Meinung nach völlig korrekt. Die von dir angegebene Schreibweise geht aber auch nicht. Ich habe übrigens gerade festgestellt, dass das Script im NC 6 auch nicht läuft. Hier noch eimal das korrigierte Script:

          <!-- Bitte unter folgenden Namen speichern: t.htm -->
          <html>
          <head>
          <title>Test</title>
          <script>
          dateiname="t.htm";

          function Change(id)
          {
            document.getElementById(id).innerHTML="<a href='t.htm'>neuer Link</a>";
          }
          </script>
          </head>
          <body>
          <div id="div1" onclick="Change('div1')" style="position:absolute; top:10px; left:20px;">Anklicken!</div>
          </body>
          </html>

          Zum Fehler: Beim ersten Klick auf dem Text wird korrekt der Text "neuer Link" als Link dargestellt. Bein Anklicken dieses Links wird er aber nicht ausgeführt (d.h. die Datei t.htm wird nicht neu geladen), obwohl er in Statuszeile richtig angezeigt wird.

          Gruß Henry

          1. Hallo !

            function Change(id)
            {
              document.getElementById(id).innerHTML="<a »» href='t.htm'>neuer Link</a>";
            }

            <div id="div1" onclick="Change('div1')" style="position:absolute; top:10px; left:20px;">Anklicken!</div>

            Zum Fehler: Beim ersten Klick auf dem Text wird korrekt der Text "neuer Link" als Link dargestellt. Bein Anklicken dieses Links wird er aber nicht ausgeführt (d.h. die Datei t.htm wird nicht neu geladen), obwohl er in Statuszeile richtig angezeigt wird.

            Nur so eine Idee:
            Hat nicht eventuell das onclick-Ereignis des umgebenden divs nach dem Austausch immer noch "Vorfahrt" gegenüber dem dann darin liegenden <a href=>?

            Vielleicht klappt es ja so (ungetestet!):

            <div id="div1" style="position:absolute; top:10px; left:20px;"><a href="javascript:Change('div1');">Anklicken!</a></div>

            Gruß,

            kerki