[b]Image von 'x = GetElementsByClass' ausgeben[/b]

Alles was mit NetBeans und Scriptsprachen zu tun hat (bitte beachten PHP hat seinen eigenen Bereich)

Moderator: wegus

znieh99
Beiträge: 28
Registriert: 28.03.2014, 17:12

[b]Image von 'x = GetElementsByClass' ausgeben[/b]

Beitragvon znieh99 » 04.06.2015, 07:59

Hallo Forum,
ich möchte aus einer Liste von <img> über einen Index eines auswählen und an anderer Stelle ausgeben. Ich verwende dafür folgenden Code:

Code: Alles auswählen

x = document.getElementsByClass("unit");      // funktioniert
obj.drawImage(x[index], x, y, 25, 25);                     // funktioniert nicht

Ich habe das jetzt mit eindeutigen id= und einer Switch Schleife gelöst, das ist aber nicht elegant.
Kann mir wer weiterhelfen?
lg heinz

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: [b]Image von 'x = GetElementsByClass' ausgeben[/b]

Beitragvon wegus » 04.06.2015, 13:07

"funktioniert nicht" ist natürlich immer sehr pauschal...Was funktioniert wann genau nicht?
In Deinem Beispiel verwendest Du x als array und als skalar gleichzeitig. Das kann natürlich auch nicht gehen. Selbst wenn Du ein Array erwartest von getElementsByClass(), so kann dieses Array ja auch leer sein (Tippfehler o.Ä.). Das heißt man sollte es in jedem Fall prüfen bevor man darüber iteriert, gleiches gilt natürlich auch für feste inidzes, hier gilt es erst einmal zu testen ob zu dem Index auch wirklich ein Element im Array existiert. Tut man all das nicht, bleibt Software natürlich in der Tat "irgendwo irgendwie" stecken.
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

znieh99
Beiträge: 28
Registriert: 28.03.2014, 17:12

Re: [b]Image von 'x = GetElementsByClass' ausgeben[/b]

Beitragvon znieh99 » 04.06.2015, 15:35

Tja, was soll ich sagen. Die Zeile wird nicht ausgeführt und es wird zum ende der function verzweigt. Ich habe verstanden das hier eine Liste von img-Objekten erstellt wird. Ich suche nun einen Befehl mit dem ich ein Element dieser Liste auf eine canvas ausgeben kann.
Das mit Array und scalar könntest du mir näher erklären,
lg heinz

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: [b]Image von 'x = GetElementsByClass' ausgeben[/b]

Beitragvon wegus » 08.06.2015, 07:18

Code: Alles auswählen

obj.drawImage(x[index], x, y, 25, 25);


enthält 2x den selben Bezeichner für offenbar unterschiedliche Dinge:

x[index] ist ein Array auf dessen Element index Du zugreifst
x ist dann später vermutlich ein skalarer Typ und die X-Koordinate an der gezeichnet werden soll!?

Da muß doch Javascript eigentlich Fehler werfen oder?
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

znieh99
Beiträge: 28
Registriert: 28.03.2014, 17:12

Re: [b]Image von 'x = GetElementsByClass' ausgeben[/b]

Beitragvon znieh99 » 09.06.2015, 10:59

Es wird kein Fehler ausgeworfen. Aber es ist natürlich klar, dass eine Variable nicht als Element und Pixelposition zugleich verwenden kann. Ein
dummer Fehler von mir.
Danke für den Hinweis, jetzt funktioniert es,
lg heinz


Zurück zu „NetBeans - Scriptsprachen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast