perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5548
davon online: 1
weitere User: 1
Click for quality!



28.07.2016 / 10:34

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Suchanfragen für Scripts/Programmierung zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragDiashow mit Fading (Überblend) Effekt
Seitenanfang
Halli Hallo,

ich habe da ein etwas kniffliges Problem, bei dem ich absolut nicht weiter komme.

Ich habe eine Diashow, geschrieben in Java Script, die mittels Preload das nachfolgende Bild sofort einzeigt. Das ganze funktioniert einwandfrei.

Jetzt habe ich gehört, daß man mittels "CSS" auch Filter nutzen kann. So möchte ich einen weichen Überblendeffekt bei jedem Bildwechsel ermöglichen (Ist, soweit ich weiß, nur beim IE möglich!).

Leider weiß ich absolut nicht, wie ich das anstellen soll. Kann mir jemand helfen? Ideal wäre es, wenn ich wüßte, um welche Befehle ich den Script erweitern muß. Vielen Dank im voraus. Hier der Script

<SCRIPT language="JavaScript">
function preload (s)
{
if (document.images)
{
i = new Image ();
i.src = s;
}
}
function makeArray() {
this.length = makeArray.arguments.length
for (var i = 0; i < this.length; i++) this[i+1] =
makeArray.arguments[i]
}
var pix = new makeArray ("01.jpg","02.jpg","03.jpg","04.jpg","05.jpg");
var nummer = 1;
function wechsle()
{
document.image.src = "../galerie/6/"+pix[nummer];
nummer += 1;
if (nummer == 6) nummer = 1
pload = "../galerie/6/"+pix[nummer];
preload(pload);
setTimeout("wechsle()", 10000);
}
</SCRIPT>

Datum: 08.02.2004-03:21

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
hallo,
denke mal, dass du hier findest was du suchst:
http://selfhtml.teamone.de/dhtml/modelle/dynamische_filter.htm

gruß
stef

Datum: 08.02.2004-14:06

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
Vielen Dank für den Tip. Der Script funktioniert jetzt mit Fading :-)))

Datum: 08.02.2004-18:58

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
Die Routine läuft jetzt. Aber nun habe ich ein anderes Problem. Wenn ich das ganze im offline Modus laufen lasse, werden die einzelnen Sequenzen perfekt überblendet.

Rufe ich die Seite jedoch auf meiner Homepage auf, passiert es, das der Anfang des fadings größtenteils übergangen wird und daher nur der letzte Teil des fadings gezeigt wird. Ist die Diashow jedoch dann einmal durchgelaufen, werden die Bilder wohl aus dem cache geladen und es kommt zu einem problemlosen fading.

Weiß jemand den Grund? Hier die Routine:

<body background="muster.jpg" link="#2543CF" vlink="#2543CF" onLoad="wechsle()">

<SCRIPT language="JavaScript">
function preload (s)
{
if (document.images)
{
i = new Image ();
i.src = s;
}
}
function Array() {
this.length = Array.arguments.length
for (var i = 0; i < this.length; i++) this[i+1] = Array.arguments[i]
}

/* "01.jpg" wird zweimal aufgerufen, da die
Diashow sofort nach dem Start ein fading
durchführt. So fadet Sie quasi in das
gleiche Bild rein. */
var pix = new Array ("01.jpg","01.jpg","02.jpg","03.jpg","04.jpg","05.jpg");

/* Andere Browser würden zweimal das Bild
laden und es dadurch doppelt so lange
zeigen. Um das auszuschließen, beginnen
diese direkt mit dem "zweiten" Bild */
if (navigator.appName.indexOf("Explorer") > -1)
{
var nummer = 1;
}
else
{
var nummer = 2;
}
var start = 0
function wechsle()
{
document.image.src = "../galerie/6/"+pix[nummer];
nummer += 1;
if (nummer == 7) nummer = 2

/* Damit ein wechsel möglichst nach 10
Sekunden geschieht, wird einfach die Dauer
für den Preload von den 10 Sekunden
subtrahiert. Sollte der Preload länger als
10 Sekunden dauern, wird direkt zum
nächsten Bild gefadet */
var zeit= new Date ();
var a=zeit.getTime ()
pload = "../galerie/6/"+pix[nummer];
var zeit= new Date ();
var b=zeit.getTime ()
var c=b-a
var d=Math.round (c)
var e=10000-d
if (e<0) e=0
preload(pload);
setTimeout("wechsle()", e);
next = new Image();
next.src = pload
document.all.fading.filters.blendTrans.Apply();
document.all.fading.src = next.src;
if (start!=0)
{
document.all.fading.filters.blendTrans.Play();
}
start=1
}
</SCRIPT>

<img id="fading" name="image" style="filter:blendTrans(Duration=4, Transition=16)" border="0" src="../galerie/6/01.jpg" width="320" height="240">

Datum: 10.02.2004-01:24

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
Die Routine läuft jetzt. Aber nun habe ich ein anderes Problem. Wenn ich das ganze im offline Modus laufen lasse, werden die einzelnen Sequenzen perfekt überblendet.

Rufe ich die Seite jedoch auf meiner Homepage auf, passiert es, das der Anfang des fadings größtenteils übergangen wird und daher nur der letzte Teil des fadings gezeigt wird.

Ist die Diashow jedoch dann einmal durchgelaufen, werden die Bilder wohl aus dem cache geladen und es kommt zu einem problemlosen fading.

Weiß jemand den Grund? Hier die Routine:

<body background="muster.jpg" link="#2543CF" vlink="#2543CF" onLoad="wechsle()">

<SCRIPT language="JavaScript">
function preload (s)
{
if (document.images)
{
i = new Image ();
i.src = s;
}
}
function Array() {
this.length = Array.arguments.length
for (var i = 0; i < this.length; i++) this[i+1] = Array.arguments[i]
}

/* "01.jpg" wird zweimal aufgerufen, da die
Diashow sofort nach dem Start ein fading
durchführt. So fadet Sie quasi in das
gleiche Bild rein. */
var pix = new Array ("01.jpg","01.jpg","02.jpg","03.jpg","04.jpg","05.jpg");

/* Andere Browser würden zweimal das Bild
laden und es dadurch doppelt so lange
zeigen. Um das auszuschließen, beginnen
diese direkt mit dem "zweiten" Bild */
if (navigator.appName.indexOf("Explorer") > -1)
{
var nummer = 1;
}
else
{
var nummer = 2;
}
var start = 0
function wechsle()
{
document.image.src = "../galerie/6/"+pix[nummer];
nummer += 1;
if (nummer == 7) nummer = 2

/* Damit ein wechsel möglichst nach 10
Sekunden geschieht, wird einfach die Dauer
für den Preload von den 10 Sekunden
subtrahiert. Sollte der Preload länger als
10 Sekunden dauern, wird direkt zum
nächsten Bild gefadet */
var zeit= new Date ();
var a=zeit.getTime ()
pload = "../galerie/6/"+pix[nummer];
var zeit= new Date ();
var b=zeit.getTime ()
var c=b-a
var d=Math.round (c)
var e=10000-d
if (e<0) e=0
preload(pload);
setTimeout("wechsle()", e);
next = new Image();
next.src = pload
document.all.fading.filters.blendTrans.Apply();
document.all.fading.src = next.src;
if (start!=0)
{
document.all.fading.filters.blendTrans.Play();
}
start=1
}
</SCRIPT>

<img id="fading" name="image" style="filter:blendTrans(Duration=4, Transition=16)" border="0" src="../galerie/6/01.jpg"

width="320" height="240"></td>

Datum: 10.02.2004-01:29

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
hallo,

das problem ist die ladezeit

du kannst dies aber beheben, in dem du alle bilder durch eine src-anweisung bereits vorladen läßt....und nicht nur das nächste
(das wird aber erheblich die ladezeit beim start der seite erhöhen)

oder/und musst du den timer für den bildwechsel etwas höher als 10 sek setzen.

gruß
stef

Datum: 12.02.2004-21:10

Beitragre: Diashow mit Fading (Überblend) Effekt
Seitenanfang
Hi Steferbo,

danke für den Tip. Ich habe mal ein bisschen rumexperimentiert und die Lösung gefunden. Das ganze fluppt jetzt wie ne eins. Ein seidenweicher fading Effekt ohne ruckeln o.ä. Also nochmals danke :-)))

Datum: 12.02.2004-22:04

-






-
-