Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-04-2005, 16:04   #1 (permalink)
Neuer User
 
Benutzerbild von darksummit
 
Registriert seit: Mar 2003
Ort: Leinfelden-Echterdingen
Beiträge: 61
Dynamische Bilder mit Verlinkung

Hi!

Habe jetzt schon ne Weile rumgespielt und ich komm einfach nicht drauf.

Hab hier dieses Script:

ActionScript:
  1. xabstand = 65;
  2. yabstand = 65;
  3. breite=50;
  4. matrix=3
  5. bilder=["451.jpg", "1.jpg","4.jpg", "5.jpg", "255.jpg", "567.jpg" ]
  6. for (var i = 0; i<bilder.length; i++) {
  7.         this.createEmptyMovieClip("bildmc"+i, i);
  8.         this["bildmc"+i].createEmptyMovieClip("bild", 1);
  9.         this["bildmc"+i].bild.loadMovie(bilder[i]);
  10.         this["bildmc"+i]._x = (i%matrix)*xabstand;
  11.         this["bildmc"+i]._y = Math.floor(i/matrix)*yabstand;
  12.         this["bildmc"+i].onEnterFrame = function() {
  13.                 if (this._height>0) {
  14.                         this.bild._width=breite;
  15.                         this.bild._yscale = this.bild._xscale;
  16.                         delete this.onEnterFrame;
  17.                 }
  18.         this["bildmc"+i].onRelease = function() {
  19.                 getURL("http://www.4silence.de","_blank");
  20.                 }
  21.         };
  22. }

Das Script lädt dynamsch bilder, die in der Variable Bilder gespeichert sind und ordnet sie in nem Raster an. Nur wie bekomme ich es jetzt hin, dass jedes Bild einen eigenen Link bekommt, der dann zum großen Bild verweist??

Ich habe ja schon einen Ansatz da stehen, der allerdings nur für alle Bilder gelten würde, wenn ich das richtig verstehe, funktionieren tut er allerdings nicht. Außerdem hab ich keine Idee, wie ich das mit den verschiedenen Links lösen soll.

Ich hoffe mal, es kann mir jemand helfen.


cya
marc
__________________
Don't worry, be happy.

Geändert von darksummit (17-04-2005 um 16:06 Uhr)
darksummit ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:19   #2 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
PHP-Code:
xabstand 65;
yabstand 65;
breite=50;
matrix=3
bilder
=[["451.jpg","www.451.de"],["1.jpg","www.1.de"],["4.jpg","www.4.de"], ["5.jpg""www.5.de"], ["255.jpg","www.255.de"], ["567.jpg","www.567.de"] ]
for (var 
0i<bilder.lengthi++) {
        
this.createEmptyMovieClip("bildmc"+ii);
        
this["bildmc"+i].createEmptyMovieClip("bild"1);
        
this["bildmc"+i].bild.loadMovie(bilder[i][0]);
        
this["bildmc"+i]._x = (i%matrix)*xabstand;
        
this["bildmc"+i]._y Math.floor(i/matrix)*yabstand;
        
this["bildmc"+i].onRelease = function() {
              
getURL(bilder[i][1],"_blank");
        }
        
this["bildmc"+i].onEnterFrame = function() {
                if (
this._height>0) {
                        
this.bild._width=breite;
                        
this.bild._yscale this.bild._xscale;
                        
delete this.onEnterFrame;
                }
        };

__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:25   #3 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
ActionScript:
  1. xabstand = 65;
  2. yabstand = 65;
  3. breite=50;
  4. matrix=3
  5. bilder=["451.jpg", "1.jpg","4.jpg", "5.jpg", "255.jpg", "567.jpg" ]
  6. urls = ["www.bla.de", "www.web.de", "www.weg.de", "www.hallo.de", "www.nanu.de", "www.huch.de"]
  7. for (var i = 0; i<bilder.length; i++) {
  8.     this.createEmptyMovieClip("bildmc"+i, i);
  9.     this["bildmc"+i].createEmptyMovieClip("bild", 1);
  10.     this["bildmc"+i].bild.loadMovie(bilder[i]);
  11.     this["bildmc"+i]._x = (i%matrix)*xabstand;
  12.     this["bildmc"+i]._y = Math.floor(i/matrix)*yabstand;
  13.     this["bildmc"+i].id = i;
  14.     this["bildmc"+i].onEnterFrame = function() {
  15.         if (this._height>0) {
  16.             this.bild._width = breite;
  17.             this.bild._yscale = this.bild._xscale;
  18.             delete this.onEnterFrame;
  19.         }
  20.     };
  21.     this["bildmc"+i].onRelease = function() {
  22.         getURL("http://"+urls[this.id], "_blank");
  23.     };
  24. }

Wie du das mit den Array machst ist egal. Das von xbass geht auch.

@xbass: Nicht ganz richtig bei dir. Da i ja hochgezählt wird, musst du den wert noch irgendwo ablegen. Sonst geht bei jedem Bild immer die letzte url auf.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:33   #4 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
@ Der Frager: Stimmt, habe nur schnell geantwortet.
allerdings brauche ich nicht zu zählen und schreiben.
PHP-Code:
xabstand 65
yabstand 65
breite=50
matrix=
bilder
=[["451.jpg","www.451.de"],["1.jpg","www.1.de"],["4.jpg","www.4.de"], ["5.jpg""www.5.de"], ["255.jpg","www.255.de"], ["567.jpg","www.567.de"] ] 
for (var 
0i<bilder.lengthi++) { 
        
this.createEmptyMovieClip("bildmc"+ii); 
        
this["bildmc"+i].createEmptyMovieClip("bild"1); 
        
this["bildmc"+i].bild.loadMovie(bilder[i][0]); 
        
this["bildmc"+i]._x = (i%matrix)*xabstand
        
this["bildmc"+i]._y Math.floor(i/matrix)*yabstand
        
this["bildmc"+i].onRelease = function() { 
              
getURL(bilder[Number(this._name.charAt(6))][1]),"_blank"); 
        } 
        
this["bildmc"+i].onEnterFrame = function() { 
                if (
this._height>0) { 
                        
this.bild._width=breite
                        
this.bild._yscale this.bild._xscale
                        
delete this.onEnterFrame
                } 
        }; 

__________________
www.fresh-solutions.de
Fresh Flash For All.

Geändert von xbass (17-04-2005 um 16:36 Uhr)
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:35   #5 (permalink)
Neuer User
 
Benutzerbild von darksummit
 
Registriert seit: Mar 2003
Ort: Leinfelden-Echterdingen
Beiträge: 61
wow, big thx an euch!!

Funktioniert alles perfekt, jetzt kann ich endlich weitermachen.

cya
marc
__________________
Don't worry, be happy.

Geändert von darksummit (17-04-2005 um 16:36 Uhr)
darksummit ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:42   #6 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Zitat:
Zitat von xbass
allerdings brauche ich nicht zu zählen und schreiben.
Verstehe ich nicht? Was meinste denn damit.

Und übrigens:
ActionScript:
  1. getURL(bilder[Number(this._name.charAt(6))][1]),"_blank");
Was wenn mehr als 10 Bilder?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 17-04-2005, 16:55   #7 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
Zitat:
Zitat von Der Frager
Verstehe ich nicht? Was meinste denn damit.

Und übrigens:
ActionScript:
  1. getURL(bilder[Number(this._name.charAt(6))][1]),"_blank");
Was wenn mehr als 10 Bilder?
Ich meinte dass ich keine Variable dafür Verwenden muss wie z.b "id".
Für mehr als 10 bilder :
PHP-Code:
getURL(bilder[Number(this._name.substring(6))][1]),"_blank"); 
__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 17:00   #8 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Nun gut. Dann wollen wir uns mal darauf einigen, dass es ziemlich egal ist, wie man es nun macht.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 17-04-2005, 17:02   #9 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
Wink

Ja, dass stimmt..
__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 19:11   #10 (permalink)
Neuer User
 
Benutzerbild von darksummit
 
Registriert seit: Mar 2003
Ort: Leinfelden-Echterdingen
Beiträge: 61
hmmm...jetzt habe ich ein neues Problem..

Hab den test vorher nur mit Bildern gemacht, die im selben Ordner wie die swf liegen. Jetzt hab ich dem genzen ne Ordnerstruktur gegeben und es funktioniert nicht mehr. Habe im Script aber auch die Struktur eingetragen:

PHP-Code:
xabstand 65;
yabstand 65;
breite=50;
matrix=3
bilder
=["\Bilder\Original\thumbs\451.jpg""\Bilder\Original\thumbs\1.jpg","\Bilder\Original\thumbs\4.jpg""\Bilder\Original\thumbs\5.jpg""\Bilder\Original\thumbs\255.jpg""\Bilder\Original\thumbs\567.jpg" ]
urls = ["www.4silence.de""www.web.de""www.google.de""www.hallo""www.bla.de""www.bla.de"]
for (var 
0i<bilder.lengthi++) {
        
this.createEmptyMovieClip("bildmc"+ii);
        
this["bildmc"+i].createEmptyMovieClip("bild"1);
        
this["bildmc"+i].bild.loadMovie(bilder[i]);
        
this["bildmc"+i]._x = (i%matrix)*xabstand;
        
this["bildmc"+i]._y Math.floor(i/matrix)*yabstand;
        
this["bildmc"+i].id i;
        
this["bildmc"+i].onEnterFrame = function() {
                if (
this._height>0) {
                        
this.bild._width breite;
                        
this.bild._yscale this.bild._xscale;
                        
delete this.onEnterFrame;
                }
        };
        
this["bildmc"+i].onRelease = function() {
                
getURL("http://"+urls[this.id], "_blank");
        };


Flash gibt mir aus:

Zitat:
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/Bilder\riginal humbs%1.jpg"
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/\ilder\riginal humbs.jpg"
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/\ilder\riginal humbs.jpg"
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/\ilder\riginal humbs.jpg"
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/\ilder\riginal humbs*.jpg"
Error opening URL "file:///G|/Marc/Websites/MarcArt2005/\ilder\riginal humbs.7.jpg"
Irgendwie ganz schön komisch was flash da für Zeichen verwendet...

Hoffe ihr könnt mir helfen

cya
marc
__________________
Don't worry, be happy.
darksummit ist offline   Mit Zitat antworten
Alt 17-04-2005, 19:27   #11 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
dein fehler zeigt dir die Lösung..
"Bilder/Original/thumbs/451.jpg",
__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 19:31   #12 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
noch besser wäre:
PHP-Code:
xabstand 65
yabstand 65
breite=50
matrix=
bilder
=["451.jpg""1.jpg","4.jpg""5.jpg""255.jpg""567.jpg" 
urls = ["www.4silence.de""www.web.de""www.google.de""www.hallo""www.bla.de""www.bla.de"
for (var 
0i<bilder.lengthi++) { 
        
this.createEmptyMovieClip("bildmc"+ii); 
        
this["bildmc"+i].createEmptyMovieClip("bild"1); 
        
this["bildmc"+i].bild.loadMovie("Bilder/Original/thumbs/"+bilder[i]); 
        
this["bildmc"+i]._x = (i%matrix)*xabstand
        
this["bildmc"+i]._y Math.floor(i/matrix)*yabstand
        
this["bildmc"+i].id i
        
this["bildmc"+i].onEnterFrame = function() { 
                if (
this._height>0) { 
                        
this.bild._width breite
                        
this.bild._yscale this.bild._xscale
                        
delete this.onEnterFrame
                } 
        }; 
        
this["bildmc"+i].onRelease = function() { 
                
getURL("http://"+urls[this.id], "_blank"); 
        }; 

__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 17-04-2005, 19:42   #13 (permalink)
kroate
 
Benutzerbild von xbass
 
Registriert seit: Jan 2003
Ort: Hannover
Beiträge: 360
Allerdings muss ich noch sagen dass ich kein Freund von dezentralisierten Daten bin (zwei Arrays).
Weil wenn du nur einmal etwas in ein Array einfugst und in anderen nicht, ist alles im Arsch.
Ich nutze lieber Multidimensionale Arrays.
__________________
www.fresh-solutions.de
Fresh Flash For All.
xbass ist offline   Mit Zitat antworten
Alt 18-04-2005, 15:03   #14 (permalink)
Neuer User
 
Benutzerbild von darksummit
 
Registriert seit: Mar 2003
Ort: Leinfelden-Echterdingen
Beiträge: 61
jetzt hab ichs kapiert ^^ dumme sache das. Ich bin da noch zu stark vom Inet abgelenkt.

Aber egal, danke für die Lösung und die Vereinchung, sollte mich wirklich mehr mit as auseinanderstezen..

cya
marc
__________________
Don't worry, be happy.
darksummit ist offline   Mit Zitat antworten
Alt 19-04-2005, 20:03   #15 (permalink)
Neuer User
 
Benutzerbild von darksummit
 
Registriert seit: Mar 2003
Ort: Leinfelden-Echterdingen
Beiträge: 61
hab jetzt nur noch ne kleine Frage. Ich will ja ne gallery draus machen, wenn ich also andere Bilder lade überlagern sich einige, d.h die bereits geladenen bleiben einfach da. Das heißt doch ich muss sie erst einmal entladen. Wie spreche ich die jetzt an um sie zu entladen. Müsste ja mit unloadMovie gehn, nur die Pfadangabe krieg ich nicht hin.

cya
marc
__________________
Don't worry, be happy.
darksummit ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 08:22 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele