Sahra: Funktion wird nicht ausgeführt

Hallo,

am Ende meines HTML Bodys habe ich folgendes stehen

<script>
 function bildwechsel(z){
  document.bild.src=bilder[z][0];
  alert("ja");
 }

bildwechsel(0);
</script>

Als Kontrolle hab ich halt die alert eingebaut. Aber es wird nicht ausgeführt, es sei denn ich lasse vorher mit PHP ne Menge Datensätze ausgeben. Kann mir jemand helfen?

Bis dann
Sahra..

  1. hi,

    Als Kontrolle hab ich halt die alert eingebaut. Aber es wird nicht ausgeführt, es sei denn ich lasse vorher mit PHP ne Menge Datensätze ausgeben. Kann mir jemand helfen?

    http://glasgoogle.de/

    gruß,
    wahsaga

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

      naja sehr hilfreich war das nicht gerade. Fagt sich doch immer noch warum es bei der Ausgabe der Datensätze funktioniert und ohne die nicht. Vielleicht hat jemand anderes eine Antwort..

      Bis dann
      Sahra

      1. Hallo Sahra,

        naja sehr hilfreich war das nicht gerade. Fagt sich doch immer noch warum es bei der Ausgabe der Datensätze funktioniert und ohne die nicht. Vielleicht hat jemand anderes eine Antwort..

        Doch wahsagas Antwort war extrem hilfreich! Hast du den Text hinter dem Link gelesen? Uns fehlen schlicht die Infos für eine Hilfe! Kannst du mal das _relevante_ HTML-Listening mitliefern? (mit und ohne Ausgabe der Datensätze).
        Aber bitte nur die relevanten Teile.

        Grüsse
        Siramon,
             ja der Penner aus Nr. 14

        1. Ok,

          <script>
          var bilder = new Array();
          var z = 0;
          </script>
          <?php
          $pfad = 'pics/';
          $dir = opendir($pfad);

          while($file = readdir($dir))
              if($file != "." && $file != ".." && $file != "thumbs")
                $files[] = $file;

          sort($files);
            $i=0;

          $erstes = array();

          foreach ($files as $value){
             echo "<script>bilder[".$i."]=new Array('pfad','breite','hoehe');</script>";
             echo "<script>bilder[".$i."]='".$pfad.$value."';</script>";
           $groesse=getimagesize($pfad.$value);
           echo "<script>bilder[".$i."]=new Array('".$pfad.$value."','".$groesse[0]."','".$groesse[1]."');</script>";
           //echo $value." ".$groesse[0]."*".$groesse[1]."<br>";
           $i++;
            }
          ?>

          <img src="" border="0" id="bild" width="" height="">

          <script>
           function bildwechsel(z){
            document.bild.src=bilder[0][0];
            alert("ja");
           }

          bildwechsel(0);
          </script>
          <script>//alert(bilder[0][0]);</script>

          1. hi,

            Ok,

            Nein, immer noch nicht OK.
            Ein _Fehlerbeschreibung_ fehlt immer noch komplett.

            Allerdings ist schon ersichtlich, warum der Zugriff auf document.bild vermutlich nicht funktionieren wird.
            Lies http://de.selfhtml.org/javascript/objekte/images.htm#allgemeines noch mal aufmerksam - was wird da gesagt, _worüber_ kann man auf diese Weise auf ein Bild zugreifen?

            gruß,
            wahsaga

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

              also erstmal braucht ihr euch ja nicht immer angemacht fühlen und denken das man alles so locker findet wie ihr. Und dann hat wahsaga ja auch immer mal die Nettigkeit wenn man ihn mal zu doof kommt ganze Postings zu löschen auch wenn mir das noch nicht passiert ist. und der Fehler war nur das ich nur bild statt images['bild'] genommen habe. Das konnte man dann ja auch im ersten Posting sehen. Also alle mal nen bischen locker...

              Bis dann
              Sahra

              1. hi,

                also erstmal braucht ihr euch ja nicht immer angemacht fühlen und denken das man alles so locker findet wie ihr.

                Ja was denn jetzt - fühlen wir uns zu schnell "angemacht", oder sind wir zu "locker"?

                Und dann hat wahsaga ja auch immer mal die Nettigkeit wenn man ihn mal zu doof kommt ganze Postings zu löschen auch wenn mir das noch nicht passiert ist.

                Was erzählst du da für einen Unsinn?
                Ich bin kein Dev hier, also habe ich auch überhupt keine Möglichkeit, hier irgendwas zu löschen.

                und der Fehler war nur das ich nur bild statt images['bild'] genommen habe. Das konnte man dann ja auch im ersten Posting sehen.

                Nein, das konnte man in deinem ersten Posting _nicht_ sehen - weil da der zugehörige HTML-Code überhaupt nicht zu sehen war; und es ja durchaus hätte sein können, dass document.bild exisitiert hätte.

                gruß,
                wahsaga

                --
                /voodoo.css:
                #GeorgeWBush { position:absolute; bottom:-6ft; }
              2. Und dann hat wahsaga ja auch immer mal die Nettigkeit wenn man ihn mal zu doof kommt ganze Postings zu löschen

                Ah, wahsaga ist aufgestiegen in den Inner Circle - meinen Glückwunsch!

                Siechfred

              3. Moin!

                also erstmal braucht ihr euch ja nicht immer angemacht fühlen

                Es fühlt sich doch keiner angemacht... Das ist der normale Umgangston, wie er in Foren oder im Usenet herrscht. Ab und zu kommt das vielleicht ein wenig ruppig rüber, aber dich hat keiner angemacht.

                Und dann hat wahsaga ja auch immer mal die Nettigkeit wenn man ihn mal zu doof kommt ganze Postings zu löschen

                Jaja, der wahsaga... Ständig hackt er sich in die Server und killt Postings, wenn man ihn beleidigt :o)
                Pass auf:
                Ey, wahsaga: Lern mal Groß- und Kleinschreibung!
                So, das wird er jetzt bestimmt auch gleich killen, wenn er den Server gerooted hat ;o)

                und der Fehler war nur das ich nur bild statt images['bild'] genommen habe.

                Der Fehler war, daß du a) die Forensregeln nicht gelesen oder verstanden hast und b) keine Fehlerbeschreibung gepostet hast...

                Also alle mal nen bischen locker...

                Alle sind "locker". Nur Du bist es scheinbar nicht... Niemand hat dich angegriffen. Du fasst das irgendwie nur falsch auf...

                Gruß, rob

                1. Hallo rob.

                  Ey, wahsaga: Lern mal Groß- und Kleinschreibung!

                  Die beherrscht er doch...

                  Einen schönen Donnerstag noch.

                  Gruß, Ash*feel free*ura

                  --
                  Selfcode: sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:) fl:( ss:) ls:[ js:|
                  30 Days to becoming an Opera8 Lover -- Full Screen and Small Screen
                  Meine Browser: Opera 8.50 | Firefox 1.0.7 | Lynx 2.8.5 | Netscape 4.7 | IE 6.0
                  Use OpenOffice.org
                  1. hi,

                    Ey, wahsaga: Lern mal Groß- und Kleinschreibung!

                    Die beherrscht er doch...

                    Deshalb fühlte ich mich auch nicht angesprochen, und habe sein Posting ausnahmsweise nicht gelöscht.

                    scnr,
                    wahsaga

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

            Ok,

            Schaun mer des mal an.

            <script>
            var bilder = new Array();
            var z = 0;

            IMHO ist diese Zuweisung überflüssig, z brauchst du später nirgends mehr.

            </script>

            php-listening

            <?php
            [...]
            foreach ($files as $value){
              echo "<script>bilder[".$i."]=new Array('pfad','breite','hoehe');</script>";

            gibt folgendes (Beispieldaten):
            [1] <script>bilder[0]=new Array('pfad','breite','hoehe');</script>

            echo "<script>bilder[".$i."]='".$pfad.$value."';</script>";

            gibt folgendes (Beispieldaten):
            [2] <script>bilder[0]='pfad/zur/datei.gif';</script>

            $groesse=getimagesize($pfad.$value);
              echo "<script>bilder[".$i."]=new Array('".$pfad.$value."','".$groesse[0]."','".$groesse[1]."');</script>";

            gibt folgendes (Beispieldaten):
            [3] <script>bilder[0]=new Array('pfad/zur/datei.gif','20','20');</script>

            $i++;
            }
            ?>

            Jetzt schau dir mal [1], [2] und [3] an. Du überschreibst dort jedesmal <<bilder[0]>> ist das so gewünscht?

            <img src="" border="0" id="bild" width="" height="">

            ich nehme an an, dieses Bild bildet die Referenz, d.h. dort soll der Bildwechsel vollzogen werden.

            <script>
              function bildwechsel(z){
                document.bild.src=bilder[0][0];

            benutze hier doch bitte folgendes:
            document.images['bild'].src = bilder[0][0] // dann können auch nicht IE's etwas damit anfangen.

            alert("ja");
              }
            bildwechsel(0);
            </script>

            Noch etwas allgemeines, der Tag Script erwartet ein Type-Attribut, also folgendes wäre korrekt:
            <script type="text/javascript">// javascript code hier</script>

            Grüsse
            Siramon,
                 ja der Penner aus Nr. 14

            1. Hallo Siramon,

              du hast mir wirklich sehr geholfen. Vielen Dank. Die Antworten von wahsaga finde ich naja unkommunikativ.

              Bis dann
              Sahra

              1. Hi!

                Die Antworten von wahsaga finde ich naja unkommunikativ.

                Naja, so nennst du es...
                Ich sehe das anders. Ich lese gerne in diesem Forum hier und ich antworte auch gerne auf Fragen, wenn ich weiterhelfen kann. Es ärgert mich aber immer wieder ungemein, wenn ich sehen muß, daß Leute die grundlegengsten Regeln der Foren-Nettiquette nicht verstehen oder nicht in der Lage sind, ein Problem so zu beschreiben, daß man ihnen auch wirklich helfen kann.
                Es kommen hier leider jeden Tag mehrere solcher Postings und viele Leute haben halt einfach keine Lust dazu, zu raten, was der Poster wohl meinte...
                Oftmals kann man sich ellenlange Diskussionen ersparen, wenn die Frage nur vertsändlich formuliert oder nur eine Fehlermeldung gepostet würde.

                Dein Posting war jetzt nicht ganz so schlimm. Da hab ich schon schlimmeres gelesen. Trotzdem wäre es hilfreich, wenn du einer Fehlerbeschreibung gepostet hättest. "Wird nicht ausgeführt" hilft keinem weiter. Man kann bei deinem Posting nur raten. Wenn eine Fehlermeldung gezeigt wird, dann poste die. Wird keine gezeigt, dann beschreibe genau, wie sich dein Script verhält und wie es sich deiner Meinung nach verhalten sollte.
                Wenn du die JavaScript-Konsole zur Hilfe nimmst, dann bekommst du u.U. genauere Hinweise (evtl. löst es auch dein Problem).
                Ansonsten sollte der erste Schritt erst einmal sein, daß du alle Fehler beseitigst... Deinem Script-Tag fehlen das type-Attribut. Dein Script steht im Body, wo es nicht hingehört, usw. usf..
                Nachdem du das getan hast, kannst du nochmal schauen, ob das Problem noch besteht...

                Aber bei einem Posting mit ganz offensichtlich schlechtem Code und einem "Es geht nicht", kann man dir keine wirkliche Hilfe geben. Jede Hilfe ist nur ein Rateversuch.

                Man darf sich im übrigen auch nicht wundern, wenn man keine Antworten erhält, wenn man nicht in der Lage ist, eine Frage verständlich zu formulieren...
                Insofern finde ich wahsagas Hinweise sehr angebracht und ich finde, Du solltest das mal genau durchlesen und dir zu Herzen nehmen.

                Gruß, rob

            2. Hallo,

              <img src="" border="0" id="bild" width="" height="">
                  document.bild.src=bilder[0][0];
              benutze hier doch bitte folgendes:
              document.images['bild'].src = bilder[0][0] // dann können auch nicht IE's etwas damit anfangen.

              Naja, wobei man wie gesagt ein name-Attribut verwenden sollte, dann ist es noch kompatibler. (Erst in DOM HTML, nicht in Netscape-JavaScript spricht document.images.bildname ein img-Element mit id="bildname" oder name="bildname" an.) Dann hätte übrigens auch document.bild geklappt, der Link auf http://de.selfhtml.org/javascript/objekte/images.htm#allgemeines wurde ja schon gepostet.

              Mathias

              1. Hallo Mathias,

                Naja, wobei man wie gesagt ein name-Attribut verwenden sollte, dann ist es noch kompatibler. (Erst in DOM HTML, nicht in Netscape-JavaScript spricht document.images.bildname ein img-Element mit id="bildname" oder name="bildname" an.) Dann hätte übrigens auch document.bild geklappt, der Link auf http://de.selfhtml.org/javascript/objekte/images.htm#allgemeines wurde ja schon gepostet.

                Da hast du völlig recht, ich habe überlesen, dass sahra nur das Attribut id verwendet hat, insofern passt wahsagas Link hervorragend.

                Grüsse
                Siramon,
                     ja der Penner aus Nr. 14

            3. Hi,

              HTML-Listening
              php-listening

              HTML-Lauschen? Php-Lauschen?

              "to listen" != "to list"

              cu,
              Andreas

              --
              Warum nennt sich Andreas hier MudGuard?
              Schreinerei Waechter
              Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
              1. Hallo Andreas,

                HTML-Listening
                php-listening
                HTML-Lauschen? Php-Lauschen?
                "to listen" != "to list"

                Jaja, ich werds mir merken: HTML-Listing, PHP-Listing. (Kam mir schon bei Schreiben komisch vor - äh sogar zweimal *g*)

                Grüsse
                Siramon,
                     ja der Penner aus der lauschigen Nr. 14

      2. hi,

        naja sehr hilfreich war das nicht gerade.

        Hast du dir die Seite wirklich _angesehen_?

        Fagt sich doch immer noch warum es bei der Ausgabe der Datensätze funktioniert und ohne die nicht.

        Vermutlich, weil im einen Falle irgendein Fehler auftritt, der im anderen nicht auftritt.
        Also wäre es erst mal nötig zu wissen, was für ein Fehler das ist - siehe glasgoogle ...

        Vielleicht hat jemand anderes eine Antwort..

        Vermutlich nicht mit den wenigen Informationen, die du lieferst.

        Du schaust dir jetzt bitte die Seite noch mal an, und machst was da steht.
        Dann liest du </faq/#Q-07b> und </faq/#Q-07c> - und versuchst es dann anschließend mal mit einer wirklichen Problembeschreibung, mit der sich auch was anfangen lässt.

        gruß,
        wahsaga

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