uwe: <div aktion in tabelle

Hallo
ich habe folgendes problem: ich habe eine Tabelle mit 6 Zeilen und 3 Spalten.In spalte 1 ist jeweils pro zeile ein image in spalte 2 downloadbuttons für formulare und in spalte 3 pro zeile text. ich möchte nun, dass der text in spalte 3 erst erscheint, bei mouse over auf das image in der betreffenden zeile, bei mouse out soll der text in spalte 3 auch wieder verschwinden. wie realisiere ich das am besten?? habe derzeit keinen plan. danke für euere hilfe

  1. hallo,,

    ich möchte nun, dass der text in spalte 3 erst erscheint, bei mouse over auf das image in der betreffenden zeile, bei mouse out soll der text in spalte 3 auch wieder verschwinden. wie realisiere ich das am besten?

    Die EventHandler sind schon als Instrumente brauchbar. Du kannst deinen Text mit der CSS-Anweisung "display" sichtbar/unsichtbar machen, oder du nimmst "visibility".

    Grüße aus Berlin

    Christoph S.

    1. Привет Christoph.

      Die EventHandler sind schon als Instrumente brauchbar. Du kannst deinen Text mit der CSS-Anweisung "display" sichtbar/unsichtbar machen, oder du nimmst "visibility".

      Hm, so ganz ohne Javascript wird das wohl trotzdem nichts :)

      Дружба!
      Siechfred

      --
      Hinweis an alle Karnevalsmuffel: Aschermittwoch ist alles vorbei.
      1. hallo Siechfred,

        Die EventHandler sind schon als Instrumente brauchbar. Du kannst deinen Text mit der CSS-Anweisung "display" sichtbar/unsichtbar machen, oder du nimmst "visibility".
        Hm, so ganz ohne Javascript wird das wohl trotzdem nichts :)

        onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.

        Grüße aus Berlin

        Christoph S.

        1. Привет Christoph.

          onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.

          Dass Opera sein eigenes Javascript-Süppchen kocht, das geschmacklich zuweilen ein wenig an JScript erinnert, ist mir bekannt. Das ändert aber nichts an der Tatsache, dass das, was innerhalb des onmouseover steht, (Java)Script-Code darstellt. Warum es Opera bei ausgeschltetem JS trotzdem ausführt, weiß ich nicht. Jedenfalls trüge es nicht dazu bei, meine zwiespältige Meinung über Opera zu verbessern.

          Дружба!
          Siechfred

          --
          Hinweis an alle Karnevalsmuffel: Aschermittwoch ist alles vorbei.
          1. hallo Siechfred,

            onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.
            Dass Opera sein eigenes Javascript-Süppchen kocht, das geschmacklich zuweilen ein wenig an JScript erinnert, ist mir bekannt.

            Das hat mit Opera und Javascript nichts zu tun, jedenfalls nicht primär. Die EventHandler sind laut W3C Attribute. Sie können natürlich eingesetzt werden, um vorhandene Javascript-Funktionen aufzurufen.

            Das ändert aber nichts an der Tatsache, dass das, was innerhalb des onmouseover steht, (Java)Script-Code darstellt.

            Die Lektüre der eben angegebenen Quelle sollte dich eines Besseren belehren.

            Grüße aus Berlin

            Christoph S.

            1. hi,

              Das ändert aber nichts an der Tatsache, dass das, was innerhalb des onmouseover steht, (Java)Script-Code darstellt.

              Die Lektüre der eben angegebenen Quelle sollte dich eines Besseren belehren.

              nein, keineswegs.

              gruß,
              wahsaga

              --
              "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
            2. Привет Christoph.

              Das hat mit Opera und Javascript nichts zu tun, jedenfalls nicht primär.

              Oh doch.

              Die EventHandler sind laut W3C Attribute. Sie können natürlich eingesetzt werden, um vorhandene Javascript-Funktionen aufzurufen.

              Eventhandler sind die Schnittstelle zwischen HTML und Scriptingcode, da sind wir uns sicher einig. Sie dienen also ausschließlich dazu, Script-Code aufzurufen, mit dem der Client etwas anzufangen weiß, und das ist bei Opera eben Javascript.

              Das ändert aber nichts an der Tatsache, dass das, was innerhalb des onmouseover steht, (Java)Script-Code darstellt.
              Die Lektüre der eben angegebenen Quelle sollte dich eines Besseren belehren.

              Ich weiß nicht, wie du zu der Auffassung kommst, dass meine Aussage falsch ist, es ist ein Fakt, dass ich von einem richtig funktionierenden Browser erwarte, dass Javascript nicht ausgeführt wird, ob es nun innerhalb eines Eventhandlers oder als separate Funktion in Head oder Body notiert ist. Dass der Opera dies nicht tut, halte ich für inkonsequent.

              Дружба!
              Siechfred

              --
              Hinweis an alle Karnevalsmuffel: Aschermittwoch ist alles vorbei.
              1. hallo Siechfred,

                Eventhandler sind die Schnittstelle zwischen HTML und Scriptingcode, da sind wir uns sicher einig.

                Ja.

                Sie dienen also ausschließlich dazu, Script-Code aufzurufen

                Nein. Es wird zwar in der Mehrzahl Javascript eingesetzt, aber auch andere Scripting-Techniken sind möglich.

                Grüße aus Berlin

                Christoph S.

                1. hi,

                  Sie dienen also ausschließlich dazu, Script-Code aufzurufen

                  Nein. Es wird zwar in der Mehrzahl Javascript eingesetzt, aber auch andere Scripting-Techniken sind möglich.

                  und diese fasste Siechfred unter der bezeichnung Script-Code zusammen. was hast du dagegen einzuwenden?

                  gruß,
                  wahsaga

                  --
                  "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
                  1. hi,

                    Sie dienen also ausschließlich dazu, Script-Code aufzurufen
                    Nein. Es wird zwar in der Mehrzahl Javascript eingesetzt, aber auch andere Scripting-Techniken sind möglich.
                    und diese fasste Siechfred unter der bezeichnung Script-Code zusammen. was hast du dagegen einzuwenden?

                    Nix, ich habe das Zitat zu früh abgeschnippelt, wie ich grade sehe. Sorry. Opera und die anderen, in denen ich jetzt eben mal schnell nen Beispiel durhcprobiert habe, erwarten nicht zwingend Javascript, auch wenn das sicher am häufigsten angeboten wird.

                    Grüße aus Berlin

                    Christoph S.

                2. Привет Christoph.

                  Sie dienen also ausschließlich dazu, Script-Code aufzurufen
                  Nein.

                  Doch, schlage den Bogen zwischen der von dir verlinkten und der in diesem Zusammenhang von mir verlinkten Seite, dann wirst du erkennen, dass das, was ich in diesem Zusammenhang schrieb, so zutreffend ist.

                  Es wird zwar in der Mehrzahl Javascript eingesetzt, aber auch andere Scripting-Techniken sind möglich.

                  Deshalb schrieb ich "Script-Code" (s.o.). Das schließt jede clientseitige Scriptsprache ein, die der eingesetzte Browser versteht. Im IE sind das halt insbesondere Javascript, JScript und VBScript. Und ich bleibe dabei, es ist inkonsequent, dass Opera den Javascript-Code, der in deinem onmouseover-Beispiel enthalten war, trotz deaktiviertem JS ausführt. Dafür gibt es m.E. keinen nachvollziehbaren Grund, Javascript ist Javascript, egal, wo es notiert ist.

                  Дружба!
                  Siechfred

                  --
                  Hinweis an alle Karnevalsmuffel: Aschermittwoch ist alles vorbei.
          2. Hallo,
            erstmal danke für eure Tips, bevor ihr euch hier die köpfe überj ava und opera zerbrecht, erstmal meine lösung des problems. jedoch mit dem "fehler" dass es nur einmal funktioniert. Gibt es hierfür abhilfe??
            <TD valign="top" height="50" width="320" colspan="2">
                  <blockquote>
                   <p>
                   <a href="http://www.css-connect.de/" onmouseout="FP_changeProp(/*id*/'CSS',0,'style.visibility','hidden')" onmouseover="FP_setLayerText(/*id*/'CSS', '&lt;p class=&quot;normal&quot; style=&quot;margin-top: 0; margin-bottom: 0&quot;&gt;\r\n&lt;b&gt;CryptoMail&lt;font face=&quot;Times New Roman&quot;&gt;&lt;sup&gt;©&lt;/sup&gt;\r\n&lt;/font&gt;Enterprise&lt;/b&gt;&lt;p class=&quot;normal&quot; align=&quot;left&quot; style=&quot;margin-top: 0; margin-bottom: 0&quot;&gt;\r\n&lt;font face=&quot;Arial&quot;&gt;D&lt;/font&gt;ie \r\nDas Systemhaus für &quot;hohe Sicherheit und ständige Verfügbarkeit von IT-Systemen')">
                   <img border="0" src="http:///images/CSS.jpg" width="185" height="75"></a></p>
                  </blockquote>
                  </TD>

        2. onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.

          Wie kommst du denn bitte zu dieser Beobachtung? Hast du ein Testdokument dazu? Von welcher Opera-Version sprichst du?

          Mathias

          1. hi,

            onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.
            Hast du ein Testdokument dazu?

            Ja. Eine Tabelle:
            <table border="1"cellspacing="1"><tr>
            <td id="z1">Zeile 1</td>
            </tr><tr>
            <td id="z2" onClick="document.getElementById('z3').style.display='block'; this.style.display='none'" style="display:none; cursor:pointer">Zeile 2</td>
            <td id="z3" onClick="document.getElementById('z2').style.display='block'; this.style.display='none'" style="cursor:pointer">Zeile 3</td>
            </tr></table>
            Und als Ergänzung ein DIV:
            <div id="div1" onClick="document.getElementById('div2').style.display='block'; this.style.display='none'">DIV1</div>
            <div id="div2" onClick="document.getElementById('div1').style.display='block'; this.style.display='none'" style="display:none">DIV2</div>

            Hier ist es zwar "onclick", aber das ist unerheblich. Ich hatte das vorhin mal kurzfristig zu "onmouseover" geändert.

            Von welcher Opera-Version sprichst du?

            7.50  -  ist derzeit mein Standardbrowser.

            Grüße aus Berlin

            Christoph S.

            1. Hallo,

              <td id="z2" onClick="document.getElementById('z3').style.display='block'; this.style.display='none'" style="display:none; cursor:pointer">Zeile 2</td>
              <td id="z3" onClick="document.getElementById('z2').style.display='block'; this.style.display='none'" style="cursor:pointer">Zeile 3</td>

              Ich kann auf die Zelle klicken, wie ich lustig bin, der Code wird nicht ausgeführt, wenn JavaScript nicht aktiviert ist (Opera 7.54 Linux).

              Im Übrigen wäre »table-cell« hier sinnvoller, aber das dürfte ja egal sein.

              Von welcher Opera-Version sprichst du?

              7.50  -  ist derzeit mein Standardbrowser.

              Ich habe mir den jetzt nicht extra heruntergeladen, um es darin zu testen, ich denke aber, dass der Fehler eher bei deinen Tests als bei Opera liegt. Bedenke, dass du nach dem Ausschalten von JavaScript z.B. durch das F12-Menü das Dokument neu laden musst, damit JavaScript wirklich nicht mehr funktioniert.

              Mathias

              1. hallo mathias,

                Ich kann auf die Zelle klicken, wie ich lustig bin, der Code wird nicht ausgeführt, wenn JavaScript nicht aktiviert ist (Opera 7.54 Linux).

                Interessant. Es sollte zwar keine Rolle spielen, aber welche Distribution fährst du? Bei mir wars grade FreeBSD 5.3. Ich habe mir Opera nach langem Herumprobieren als "meinen" Statdardbrowser ausgesucht, weil ich ihn auf allen Plattformen in derselben Version einsetzen konnte  -  geht mi Firefox nicht in derselben Weise. Zwar hab ich ihn mir selber kompiliert, aber keine eigenen ./configure-Anweisungen mitgegeben, so daß ich alle "default"-Einstellungen haben sollte

                Im Übrigen wäre »table-cell« hier sinnvoller, aber das dürfte ja egal sein.

                Richtig. Ich habe das Ding nur als Beispiel auf meinem Rechner in einem Ordner mit DHTML-Schnipseln herumliegen, damit ich mir das Prinzip nicht jedesmal, wenn ich es grade brauchen sollte, völlig neu erfinden muß

                Von welcher Opera-Version sprichst du?
                7.50  -  ist derzeit mein Standardbrowser.
                Ich habe mir den jetzt nicht extra heruntergeladen, um es darin zu testen, ich denke aber, dass der Fehler eher bei deinen Tests als bei Opera liegt.

                Mag sein, wirklich hundertprozentig ausschließen kann ich das ja eh nie.

                Bedenke, dass du nach dem Ausschalten von JavaScript z.B. durch das F12-Menü das Dokument neu laden musst, damit JavaScript wirklich nicht mehr funktioniert.

                Ich bin weit gründlicher: ich mache da immer erst den Cache leer, fahre ihn ganz runter (und schalte manchmal sogar gleich den X-Server ab), dann fahre ich ihn neu hoch. Das sollte reichen.

                Grüße aus Berlin

                Christoph S.

                1. Hallo,

                  Ich kann auf die Zelle klicken, wie ich lustig bin, der Code wird nicht ausgeführt, wenn JavaScript nicht aktiviert ist (Opera 7.54 Linux).

                  Interessant. Es sollte zwar keine Rolle spielen, aber welche Distribution fährst du?

                  Gentoo.
                  Habe es noch einmal mit 7.50 static für Linux (http://arc.opera.com/pub/opera/linux/750/final/en/i386/static/opera-7.50-20040511.1-static-qt.i386-en.tar.bz2) und Windows (http://arc.opera.com/pub/opera/win/750/en/std/ow32enen750.exe) probiert, mit demselben Ergebnis.

                  Mathias

            2. Hi Christoph,

              onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.

              nein, definitiv nicht.

              Von welcher Opera-Version sprichst du?

              7.50  -  ist derzeit mein Standardbrowser.

              Negativ getestet mit Opera 7, 7.10, 7.50p4, 7.50, 7.54, 7.60p1, 7.60p2 und 7.60p3. Trotz Kenntnis deiner Windows-Installationen.

              Grüße,
               Roland

              1. hi,

                onmouseover="document.getElementById('text1').style.display='block';" funktioniert in Opera auch bei abgeschaltetem Javascript.
                nein, definitiv nicht.

                WAAAAAHHHHHHH !

                ich verstehe ja eure Widersprüche. Aber glaub mir: ich würde doch _sowas_ nicht schreiben (und damit, wenn auch unbeabsichtigt, eine Diskussion lostreten), wenn es mir nicht bei einem schnellen Test meines Codeschnipsels genauso passiert wäre. Jetzt darf ich den Rest des Abends daran herumrätseln, wieso das "mein" Opera macht und "eure" Opera sich bockig stellen ;-(

                Grüße aus Berlin

                Christoph S.

  2. Привет uwe.

    ich möchte nun, dass der text in spalte 3 erst erscheint, bei mouse over auf das image in der betreffenden zeile, bei mouse out soll der text in spalte 3 auch wieder verschwinden. wie realisiere ich das am besten??

    Javascript bietet sich zwar an, es stellt sich jedoch die Frage, was gegen ein title-Attribut mit aussagekräftigem Inhalt im img-Tag spricht.

    Дружба!
    Siechfred

    --
    Hinweis an alle Karnevalsmuffel: Aschermittwoch ist alles vorbei.
    1. hallo Siechfred,

      Javascript bietet sich zwar an, es stellt sich jedoch die Frage, was gegen ein title-Attribut mit aussagekräftigem Inhalt im img-Tag spricht.

      "title" bleibt auch bei einer Mausgeste flüchtig und verschwindet unter Umständen, noch ehe du alles gelesen hast  -  es hängt davon ab, wieviel Text erscheinen soll.

      Grüße aus Berlin

      Christoph S.