Senkrechtslider mit Buttonfunction

Mit dem nachfolgenden Script kann ein Senkrechtslider in Flash realisiert werden, der es erlaubt, durch eine zuvor definierte Anzahl von Bildern zu scrollen.

Die Bilder müssen in dem Unterordner »bilder« abgelegt werden und eine fortlaufende Bezeichnung im Muster »bild1.jpg« etc. aufweisen.

Das Script ordnet die Bilder untereinander an. Durch Bewegen der Mouse wird die Richtung (oben und unten) des auf diese Weise erzeugten, vertikalen Bildstreifens bestimmt. Links lassen sich ebenfalls festlegen.

Die Funktionen sind: Integrierter Preloader, Slider und Buttonfunction:

//Copyright by Ralf Berg 2005
//info@r-berg.de
//Einfach ein paar Bilder in dem Unterordner „bilder“ packen und den Namen der jpg in bild1.jpg – bildX.jpg
//umbennen. Danach die Var anz anpassen und schon kann es los gehen 😉
stop();
var anz = 8;
var gesch = 3;
// _x Postition
var posX = 100;
createEmptyMovieClip(„slider“, 20);
createEmptyMovieClip(„slider2“, 30);
slider._x = posX
slider2._x = posX
createEmptyMovieClip(„preloader“, 40);
//Array für die Buttonzuweisung
link = new Array(„http://www.namederwebsite1.de“, „http://www.namederwebsite2.de“, „http://www.namederwebsite3.de“, „http://www.namederwebsite4.de“, „http://www.namederwebsite5.de“, „http://www.namederwebsite6.de“, „http://www.namederwebsite7.de“, „http://www.namederwebsite8.de“);
for (i=1; i<=anz; i++) {
slider.createEmptyMovieClip(„bild“+i, i);
slider2.createEmptyMovieClip(„bild“+i, i);
loadMovie(„bilder/bild“+i+“.jpg“, slider[„bild“+i]);
loadMovie(„bilder/bild“+i+“.jpg“, slider2[„bild“+i]);
}
function pre() {
for (i=0; i<=anz; i++) {
preloader.createTextField(„lade“+i, i, 0, 20*i, 300, 200);
preloader[„lade“+i]._x = posX
preloader[„lade“+i].multiline = true;
preloader[„lade“+i].wordWrap = true;
preloader[„lade“+i].border = false;
meinFormat = new TextFormat();
meinFormat.font = „Times New Roman“;
meinFormat.size = 10;
meinFormat.color = 0xff0000;
meinFormat.bullet = false;
meinFormat.underline = true;
preloader[„lade“+i].setTextFormat(meinFormat);
}
}
//Function für die Buttonbefehle. Hier bitte nur die Anweisungsart ändern.
function buttonAn(i) {
slider[„bild“+i].bLink = link[i-1];
slider2[„bild“+i].bLink = link[i-1];
slider[„bild“+i].onRelease = function() {
getURL(this.bLink, „_blank“);
};
slider2[„bild“+i].onRelease = function() {
getURL(this.bLink, „_blank“);
};
}
var i = 1;
function loader(i) {
this.onEnterFrame = function() {
gesamt = slider[„bild“+i].getBytesTotal();
geladen = slider[„bild“+i].getBytesLoaded();
prozent = geladen*100/gesamt;
preloader[„lade“+i].text = „lade Bild“+i+“ „+prozent+“ %“;
if (geladen == gesamt && geladen>4) {
if (i>1) {
slider[„bild“+i]._y = slider[„bild“+(i-1)]._y+slider[„bild“+(i-1)]._height;
slider2[„bild“+i]._y = slider[„bild“+(i-1)]._y+slider[„bild“+(i-1)]._height;
buttonAn(i);
} else {
buttonAn(i);
}
++i;
delete (this.onEnterFrame);
if (i<=anz) {
loader(i);
} else {
slider2._y = slider._height;
preloader.unloadMovie();
setzePano(slider);
setzePano(slider2);
}
}
};
}
loader(1);
pre();
function setzePano(obj) {
obj.mittelpunkt = obj.mittelpunkt=Stage.height/2;
obj.umkehrPunkt = (obj._height-(obj.mittelpunkt*2))/2;
obj.onEnterFrame = function() {
this._y += (this.mittelpunkt-this._parent._ymouse)/30;
if (this._y<-this.umkehrPunkt) {
this._y += this._height;
}
if ((this._y-this._height)>-this.umkehrPunkt) {
this._y -= this._height;
}
this._parent.slider2._y = this._y-this._height;
};
}
Ein Tipp von: Ralf Berg, bearbeitet und aktualisiert von: Designer in Action

Kommentieren

Ich akzeptiere die Datenschutzerklärung.