Jörn: Tabellenzeile farblich markieren

Hallo Leute!

Ich arbeite mit einem KartenServer, der mir ein Kartenbild mit Standpunkten generiert. Zudem hab ich auf meiner Seite einen <iframe> integriert. In diesem werden die Daten der jeweiligen Standpunkte in einer Tabelle dargestellt.

Wenn man mit der Maus über einen Standpunkt fährt, soll die betreffende Zeile farblich markiert werden, damit eine Verbindung zwischen Punkt auf der Karte und der jeweiligen Zeile in der Tabelle herrscht.

Leider klappt das nicht im Firefox, hingegen im Internet Explorer schon.

Folgendes soll eine Zeile in der Tabelle des <iframe> farblich markieren:

tabelleInfo.document.getElementById(idTR).style.backgroundColor = "#C6ECFF";

tabelleInfo ist die "id" des <iframe>, idTR die "id" der jeweiligen Zeile.

Vielleicht kann mir ja jemand helfen. Dank im voraus.

Gruß Jörn

  1. Hi,

    tabelleInfo.document.getElementById(idTR).style.backgroundColor = "#C6ECFF";
    tabelleInfo ist die "id" des <iframe>,

    und an welcher Stelle hast Du das gleichnamige Objekt erzeugt, auf das Du oben zugreifst?

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi!

      Im <iframe> wird eine phtml Seite gestartet, die mir aus dem MSSQL-Server Daten ausliest und in einer Tabelle wieder zusammenbaut. Hier bekommt jede <tr> eine eigene ID.

      Gruß Jörn

      1. hi,

        Im <iframe> wird eine phtml Seite gestartet, die mir aus dem MSSQL-Server Daten ausliest und in einer Tabelle wieder zusammenbaut. Hier bekommt jede <tr> eine eigene ID.

        (Mäßig) interessante Zusatzinfo - aber warum beantwortest du Cheatahs Frage nicht?

        Er fragte dich explizit, wo du dir die Referenz auf das Element besorgst, von dem du bisher nach eigener Aussage lediglich die ID vorliegen hast.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Hi!

          Ich hoffe, ich kann Euch damit weiter helfen.

          Zu meiner Hauptseite gibt es noch ein paar JavaScript Dateien. Diese Dateien sind in der Hauptseite eingebunden. Wenn ich über einen Punkt auf der Karte bin, wird ein onmouseover-Event angestoßen. Hier wird in einer js.Datei eine Funktion aufgerufen, die die id des Standpunktes mitbekommt. Über die Funktion soll dann die Zeile markiert werden.

          Gruß Jörn

          1. Hi,

            Ich hoffe, ich kann Euch damit weiter helfen.

            nein, auch das beantwortet die Frage leider nicht. Du benutzt ein Objekt namens "tabelleInfo". Also musst Du irgendwo im JavaScript-Code diesen Namen in irgend einer Form erzeugt und diesem das Objekt zugewiesen haben. Wo und wie ist das passiert?

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. Hi Cheatah!

              Den Namen "tabellenInfo", auch die id des <iframe>, hab ich natürlich in die Definition des <iframe> geschrieben.

              <iframe id="tabellenInfo" ...</iframe>.

              Gruß Jörn

              1. hi,

                Den Namen "tabellenInfo", auch die id des <iframe>, hab ich natürlich in die Definition des <iframe> geschrieben.

                <iframe id="tabellenInfo" ...</iframe>.

                Schön, aber deshalb hast du in Javascript noch lange kein Objekt namens tabellenInfo.

                gruß,
                wahsaga

                --
                /voodoo.css:
                #GeorgeWBush { position:absolute; bottom:-6ft; }
                1. Hi wahsaga!

                  Natürlich hab ich in JavaScript kein Objekt namens tabellenInfo. Aber im IE hat es nun mal auch so geklappt.

                  Gruß Jörn

                  1. Natürlich hab ich in JavaScript kein Objekt namens tabellenInfo. Aber im IE hat es nun mal auch so geklappt.

                    ein Grundsatz: Traue nie einem Internet Explorer!

                    Der IE hat die tolle Eigenschaft, dass er versucht fast jede Nachlässigkeit des Programmieres auszubügeln. Du kannst also zeilenweise Mist programmieren und merkst es nicht, da der IE fast alles frißt. es bleibt aber trotzdem falsch.

                    Struppi.

                    --
                    Javascript ist toll (Perl auch!)
                    1. hi,

                      Natürlich hab ich in JavaScript kein Objekt namens tabellenInfo. Aber im IE hat es nun mal auch so geklappt.

                      ein Grundsatz: Traue nie einem Internet Explorer!

                      Der IE hat die tolle Eigenschaft, dass er versucht fast jede Nachlässigkeit des Programmieres auszubügeln.

                      Der IE sieht es m.E. sogar eher als "Service" an, dass er zu einem HTML-Element mit einer ID automatisch ein gleichnamiges Javascript-Objekt zur Verfügung stellt.

                      Ich könnte jedes mal kotzen, wenn es mir wieder einmal passiert, dass ich (aus Gründen der Konsistenz) ein eigenes Javascript-Objekt gleich benenne wie die ID des HTML-Elementes, mit welchem ich etwas machen will - und der IE dann plötzlich mit "dieses Objekt unterstützt die Methode nicht" oder ähnlichem Unfug kommt.

                      gruß,
                      wahsaga

                      --
                      /voodoo.css:
                      #GeorgeWBush { position:absolute; bottom:-6ft; }
                  2. Hi,

                    Natürlich hab ich in JavaScript kein Objekt namens tabellenInfo.

                    dann gibt es keinen Grund anzunehmen, Dein Code könne funktionieren.

                    Aber im IE hat es nun mal auch so geklappt.

                    Ja, dieser erhebliche Mangel ist hinlänglich bekannt. Aber welche Bedeutung misst Du dem bei? Andere Browser sind nun mal nicht so kaputt wie der IE.

                    Cheatah

                    --
                    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
                    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
                    X-Will-Answer-Email: No
                    X-Please-Search-Archive-First: Absolutely Yes
  2. Hi,

    tabelleInfo.document.getElementById(idTR).style.backgroundColor = "#C6ECFF";
    tabelleInfo ist die "id" des <iframe>, idTR die "id" der jeweiligen Zeile.

    frames["tabelleInfo"].document.getElementById(idTR).style.backgroundColor = "#C6ECFF";

    Ggf. statt ID aber NAME verwenden ...

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  3. tabelleInfo.document.getElementById(idTR).style.backgroundColor = "#C6ECFF";

    tabelleInfo ist die "id" des <iframe>, idTR die "id" der jeweiligen Zeile.

    Ist tabelleInfo und idTR wirklich die id oder sind es Variabeln mit der id als String?

    Struppi.

    --
    Javascript ist toll (Perl auch!)
    1. Hi Struppi!

      Also "tabellenInfo" ist schon die wirklich, so in den Quelltext plazierte id. Bei "idTR" ist es eine Variable, dass es ja mehrere Zeilen in meiner Tabelle gibt.

      Gruß Jörn

      1. hi,

        Also "tabellenInfo" ist schon die wirklich, so in den Quelltext plazierte id.

        Ja, also ein String.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }