alexander richter: this.images.name ist kein objekt?

tach!

warum bekomme ich bei folgender syntax:
<img name="test" src="profil.gif" onClick="javascript:alert(this.images.name);"></img>

die fehlermeldung"this.images.name ist kein objekt"?

ist "this" für das "images"-objekt nicht erlaubt?

vielen dank schon 'mal sagt:
alexander

  1. Hi,

    probiers mal mit: document.test.src
    wenn du die src des Images lesen willst.

    Gruß

    Y

    Forum: http://cgi.exit.mytoday.de/~tselb/forum.pl

    1. hallo,

      vielen dank, aber ich glaube, mein problem ist etwas komplizierter, als es zunächst den anschein haben könnte; wenn ich kurz ein wenig ausholen darf:

      ich habe ein navigationsmenü geschrieben, bei dem nach seitenaufbau nur die hauptmenüpunkte (hp) direkt untereinander zu sehen sind und beim klicken fahren die dazugehörigen untermenüpunkte (up) darunter heraus und die unteren hp's verschieben sich auch entsprechend nach unten.
      und weil ich mir die eventuelle nachträgliche hinzufügung/entfernung von hp's oder up's möglichst einfach machen will, habe ich das ganze im "baukastenprinzip" geschrieben: die hp's und up's sind als grafiken in jeweils einem zweidimensionalen array definiert. so kann ich sie nämlich in einer routine im body per write.document('entspr. html-text') automatisch positionieren , d.h. ohne am html rumfummeln zu müssen, auch wenn die anzahl hp oder up verändert wird; ich muss dann nur im head die defintion des arrays entprechend erweitern.
      damit ich in den hp- und up-bewegungs-routinen vernünftig auf die zu bewegenden menüteile zugreifen kann, werden die einzelenen elemente (per routine im body, s.o.) in etwa folgendermaßen aufgebaut:

      zähler=0
      <div>
      <img src="hp-array[zähler].src" onClick="javascript:bewegen(zähler)</img>
      </div>
         <div>
         <img ="up-array[zähler].src")</img>
         <img ="up-array[zähler].src")</img>
         ...
         </div>
      zähler++

      und wieder von vorn, solange bis die array-länge des hp-arrays erreicht ist.

      d.h. alle hp's sind in jew. einem div und ALLE up's sind auch in jew. nur EINEM div. so kann ich in der funktion "bewegen(welches-menü-wurde-geklickt)" mit einfachen rechenoperationen bestimmen, welche anderen elemente (nämlich die darunter liegenden div's, von denen es pro hp ja immer nur genau 2 gibt) bewegt werden müssen.
      in "bewegen" auf die img's zugreifen zu müssen, scheint mit sehr kompliziert, denn die hp's haben unterscheidlich viele up's; wie soll man da berechnen, welche elemente bewegt werden sollen.

      so weit klappt auch alles ganz prima, nur jetzt wollte ich für die hp's noch einen bildtausch bei mouseover hinzufügen, und da bleibt mir wohl nix anderes übrig, als die img's direkt anzusprechen und nicht die div's.

      deshalb wollte ich den oben gezeigten aufbau des menüs so ändern:

      zähler=0
      <div>
      <img src="hp-array[zähler].src" onClick="javascript:bewegen(zähler);" name="hp-"+zähler+" onMouseover="javascript:tauschen(this.images.name);"</img>
      </div>
         <div>
         <img ="up-array[zähler1].src")</img>
         <img ="up-array[zähler1].src")</img>
         ...
         </div>
      zähler++

      aber this.images.name sei kein objekt, lässt mich der IE wissen...

      so, alle, die überhaupt bis hierher gelesen haben, verdienen meine aufrichtige hochachtung, falls denn auch noch jemand eine lösung hat, sinke ich auf die knie...

      (vielleicht stehe ich ja auch nur ganz fürchterlich auf einem schlauch, den ich vor lauter bäumen nicht sehen kann)

      es grüßt:
      alexander

      Hi,

      probiers mal mit: document.test.src
      wenn du die src des Images lesen willst.

      Gruß

      Y

      Forum: http://cgi.exit.mytoday.de/~tselb/forum.pl

  2. Hallo!

    warum bekomme ich bei folgender syntax:
    <img name="test" src="profil.gif" onClick="javascript:alert(this.images.name);"></img>
    die fehlermeldung"this.images.name ist kein objekt"?
    ist "this" für das "images"-objekt nicht erlaubt?

    Nun ja, images ist eben weder Methde noch eigenschaften des Objekts ;-) Du solltest dich mal informieren darüber was this eigentlich macht!

    "this" zeigt bereits auf das Image! wenn du nur alert(this) schreibst sollte er [Object] oder Variationen davon ausgeben. kannst auch mal alert (this.name) versuchen!

    ... oder ein paar threads weiter unten lesen! Da hat jemand nämlich _dasselbe_ Problem !!!

    http://www.teamone.de/selfaktuell/forum/?m=128390&t=24661

    lg bernhard

    1. viieeelen dank!

      leider habe ich diese antwort erst gelesen, nachdem ich meinen roman auf die antwort von uepselon geschrieben habe; sorry also für das geschwafel

      Hallo!

      warum bekomme ich bei folgender syntax:
      <img name="test" src="profil.gif" onClick="javascript:alert(this.images.name);"></img>
      die fehlermeldung"this.images.name ist kein objekt"?
      ist "this" für das "images"-objekt nicht erlaubt?

      Nun ja, images ist eben weder Methde noch eigenschaften des Objekts ;-) Du solltest dich mal informieren darüber was this eigentlich macht!

      "this" zeigt bereits auf das Image! wenn du nur alert(this) schreibst sollte er [Object] oder Variationen davon ausgeben. kannst auch mal alert (this.name) versuchen!

      ... oder ein paar threads weiter unten lesen! Da hat jemand nämlich _dasselbe_ Problem !!!

      http://www.teamone.de/selfaktuell/forum/?m=128390&t=24661

      lg bernhard

      1. Hallo Alex!

        viieeelen dank!

        soll heissen es funktioniert jetzt?

        leider habe ich diese antwort erst gelesen, nachdem ich meinen roman auf die antwort von uepselon geschrieben habe; sorry also für das geschwafel

        *g* ich hab mal gehört schreiben befreit. Ist doch so oder? ;-) Öfter mal seine Probleme von der seele schreiben, dann kommt die Lösung oft durch einen Wink des Schicksals vom Götterboten herbeigebraccht ;-)

        lg bernhard

        PS: Nein, mein richtiger Name ist nicht Hermes, und schon gar nicht Phettberg *fg*

  3. Hi!

    warum bekomme ich bei folgender syntax:
    <img name="test" src="profil.gif" onClick="javascript:alert(this.images.name);"></img>

    Ausser dem Name-Problem ist auch noch das "javascript:" im onClick falsch. Ich habe von so einem Befehl jedenfalls noch nie was gehoert, Du etwa?

    So long