keine Ahnung: Probleme mit mouseover Skript bei Firefox

Hi

ich habe leider keinen Plan von Javascript aber würde sehr gerne dieses Script hier verwenden:
<script>
<!--
var infotxt = "";
var welcome =  '<h3>Willkommen</h3><p>blablabla.</p>';
function Info(infotxt)
{
 if (navigator.appName=="Mozilla") with(document.info.document) { open(); write(infotxt); close();}
 else info.innerHTML=infotxt;
}
function Remove()
{
 if (navigator.appName=="Mazilla") with(document.info.document) { open(); write(welcome); close();}
 else info.innerHTML=welcome;
}
//-->
</script>

Unter Opera und Safari habe ich keine Probleme aber im Firefox geht es nicht. Kann man das so anpassen, dass es im Firefox auch geht?

Besten Dank!

  1. Wo hast du das denn ausgegraben?

    <script type="text/javascript">
    var infotxt = "";
    var welcome =  '<h3>Willkommen</h3><p>blablabla.</p>';
    var info = ....
    function Info() {
     info.innerHTML=infotxt;
    }
    function Remove() {
     info.innerHTML=welcome;
    }
    </script>

    statt der ... müsstest du noch sowas wie document.getElement einfügen.

    1. Wo hast du das denn ausgegraben?

      Denke mir schon das es alt ist aber es macht genau das was ich will (außer im FF). Wenn was was bessere gibt würde ich auch das nehmen aber Google hat mir nichts vergleichbares gebracht.
      Der Clou ist das ich bei links ein onmouseover="Info('text') einfügen kann der dann wo anders auf der Seite ausgegeben wird: <div id="info" dir="LTR" class="text"></div>

      wenn ich dein Skript verwende:
      <script type="text/javascript">
      var infotxt = "";
      var welcome =  '<h3>Willkommen</h3><p>blablabla.</p>';
      function Info(infotxt) {
       info.innerHTML=infotxt;
      }
      function Remove() {
       info.innerHTML=welcome;
      }
      </script>

      dann klapt das auch aber leider nicht im FF.

      statt der ... müsstest du noch sowas wie document.getElement einfügen.

      Tut mir leid damit kann ich nichts anfangen... document.getInof oder wie?

      Danke aber schon mal für die Antwort!

      1. Der Clou ist das ich bei links ein onmouseover="Info('text') einfügen kann der dann wo anders auf der Seite ausgegeben wird: <div id="info" dir="LTR" class="text"></div>

        aha!

        statt der ... müsstest du noch sowas wie document.getElement einfügen.

        du hättest nach derartigen Funktionen mal suchen sollen! Zb in SelfHTML.

        Tut mir leid damit kann ich nichts anfangen... document.getInof oder wie?

        nee nee! So:

        <script type="text/javascript">
        var infotxt = "";
        var welcome =  '<h3>Willkommen</h3><p>blablabla.</p>';
        var infodiv = document.getElementById("info");
        function Info() {
         infodiv.innerHTML=infotxt;
        }
        function Remove() {
         infodiv.innerHTML=welcome;
        }
        </script>

        dann klappts auch mit dem Firefox (im Gegensatz zu anderen Browsern legt der nicht automatisch eine Verbindung zum Element mit  id="info" in JavaScript an)

  2. Hallo,

    ich habe leider keinen Plan von Javascript aber

    ganz ohne Plan, das kommt nicht so gut.

    if (navigator.appName=="Mazilla") with(document.info.document) { open();

    "Let's enjoy mozilla on Macintosh"?

    Grüsse aus Düsseldorf

    Cyx23

    1. Sorry tippfehler von mir. Ich hab da schon alle möglichen Werte versucht Mozilla, Firefox etc. und auch richtig geschrieben ;-)

  3. Hi!

    Ich weiss nicht ob Sie's schon wußten...
    Aber der Firefox kann das mit innerHTML auch seit Version 1.0.
    Somit sollte (im Prinzip) die Zeile:
    document.all.info.innerHTML = ...
    in allen Browsern OHNE Weiche soweit funktionieren (außer älteren netscapes).

    Generell sei jedoch nicht innerHTML sondern das DOM Node Modell empfohlen (beachte auch Unterobjekt Node!): http://de.selfhtml.org/javascript/objekte/document.htm

    Grüsse,
    Richard

    1. Hi!

      Hab's unter FF ausprobiert; der mag den Code so nicht.
      Deshalb hier die Lösung:
      document.getElementById("info").innerHTML =...

      Grüsse,
      Richard

      1. Hallo Richard

        also erst mal vielen dank so klappt es:
        <script type="text/javascript">
        var infotxt = "";
        var welcome =  '<h3>Willkommen</h3><p>blablabla.</p>';
        function Info(infotxt) {
         document.getElementById("info").innerHTML=infotxt;
        }
        function Remove() {
         document.getElementById("info").innerHTML=welcome;
        }
        </script>

        dann die Links mit:
        <a href="#" class="start" onmouseover="Info('Text')>Linkname</a>

        und zur Ausgabe:
        <div id="info" dir="LTR" class="text"></div>

        Danke!