| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Dec 2003
Beiträge: 5
| link für Popup in dynamisch geladenen MC's
Hi, ich habe folgendes Problem: Über meine Webseite läuft horizontal ein Laufband. Dieses besteht aus einzelnen, dynamisch geladenen MC's, die jeweils ein kleines jpg anzeigen. Beim Klick auf das jeweilige jpg soll sich ein Popup mit der entsprechend größeren Version des Fotos öffnen. Hier der Code: // Klasse für eine Bilderleiste, die sich nach links bewegt. function Leiste(anzahl, bildHoehe, bildBreite) { this.anzahl = anzahl; this.hoehe = bildHoehe; this.breite = bildBreite; this.basisMC = _root.createEmptyMovieClip("basis_mc", 10); this.behaelter_arr = new Array(); this.interval; this.init(); } o = Leiste.prototype; // positioniere alle MCs auf der Bühne und verpasse ihnen einen onRollOver ![]() o.init = function() { var posX = -this.breite; var tempThis = this; for (i=1; i<this.anzahl+1; i++) { var temp_mc = this.basisMC.attachMovie("bild_"+i, "bild_"+i, 10+i); temp_mc._y = this.hoehe/2; temp_mc._x = posX; posX += this.breite; this.behaelter_arr.push(temp_mc); temp_mc.onRollOver = function () { trace("Maus über Bild "+this._name); }; temp_mc.onRollOver = function() { trace("Maus über Bild "+this._name); this._alpha = 80; tempThis.stopBewegung(); }; temp_mc.onRollOut = function() { trace("Maus rollt aus Bild "+this._name); this._alpha = 100; meineLeiste.bewegung(20, -1); }; temp_mc.onRelease = function() { trace("oeffnet Popup"+this._name); getUrl ("Javascript penNewWindow('../bilder/+this_name+.htm','thewin','height=350,width=470,to olbar=no,scrollbars=no');");}; } }; o.bewegung = function(tempo, pix) { var tempBehaelter = this.behaelter_arr; var tempAnzahl = this.anzahl; var tempBreite = this.breite; var tempRichtung = this.richtung; var tempPix = pix; var tempThis = this; function move() { i++; if (tempBehaelter[0]._x<-tempBreite) { tempThis.setFirstMCToLast(); } for (j=0; j<tempAnzahl; j++) { tempBehaelter[j]._x += tempPix; } } this.interval = setInterval(move, tempo); }; o.stopBewegung = function() { clearInterval(this.interval); }; o.setFirstMCToLast = function() { var ersterMC = this.behaelter_arr[0]; this.behaelter_arr.shift(); this.behaelter_arr.push(ersterMC); this.behaelter_arr[this.anzahl-1]._x = this.behaelter_arr[this.anzahl-2]._x+this.breite; }; delete o; /* -------------------------- // Erzeuge die Klasse ... Der Klasse Leiste können folgende Parameter mitgegeben werden: - Anzahl der Bilder - Bilderhöhe - Bilderbreite Die implementierten MovieClips müssen mit dem Stamm "bild_" und einer fortlaufenden Zahl benannt sein und alle gleich gross sein. */ // HIER ERZEUGEN WIR DIE LAUFLEISTE MIT 22 BILDERN, // DIE ALLE 100 BREIT UND 60 HOCH SIND // UND BEWEGEN SIE. _global.meineLeiste = new Leiste(22, 60, 100); // Beginne die Bewegung // erster Wert: Geschwindigkeit (immer minus) meineLeiste.bewegung(20, -1); // --------------------------------- // dieser Befehl stoppt die Bewegung // meineLeiste.stopBewegung(); Das Problem liegt offensichtlich bei der Definition des Pfades. temp_mc.onRelease = function() { trace("oeffnet Popup"+this._name); getUrl ("Javascript penNewWindow('../bilder/+this_name+.htm','thewin','height=350,width=470,to olbar=no,scrollbars=no');");}; Die HTML-Dateien liegen im Unter-Ordner "Bilder" und haben bis auf die Endung ".htm" exakt den selben Namen wie die jeweiligen MC's. Hat jemand eine idee, wie man den Pfad korrekt angibt? Gruß hibro |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |