Zurück   Flashforum > Alternative Technologien > JavaScript & jQuery

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-03-2009, 02:43   #1 (permalink)
copy
 
Registriert seit: Jul 2004
Ort: Hamburch
Beiträge: 301
Alpha-Tween im IE mit JSTweener

Hallo,

ich versuche gerade per JS einen Alpha-Tween auf ein Div-Element anzuwenden. Das klappt auch mal wieder ganz wunderbar in allen ordentlichen Browsern, aber der IE interpretiert ja nur sonderbaren CSS-Filter-Syntax.

Um den Tween anzulegen habe ich eine kleine JS-Funktion:

Code:
		function fadeContent() {
			JSTweener.addTween(contentDiv.style, {
				time: 4,
				transition: 'easeOutBack',
				top: 100,
				opacity:1,
				MozOpacity:1,
				KhtmlOpacity:1
				// filter:"alpha(opacity=" + 100 + ")"
			});
		  }
Das klappt prima. Die rote auskomentierte Zeile wäre in etwa die Art wie der IE mit Alpha-Angaben umgeht; JSTweener kann damit aber natürlich nix anfangen, da ja nicht einfach ein Wert getweent wird.

Ich bin recht ratlos wie ich dieses Problem lösen kann. Anbei ein komplettes, aufs wesentliche reduziertes Beispiel.

In dem Bsp. ist auch eine JS-Funktion setAlpha enthalten um den Anfangs-Alpha-Wert zu setzen (0). Ich habe auch schon darüber nachgedacht, ob ich sozusagen "onTween" diese Funktion nutzen kann... ich habe aber keine Idee wie:-/

Für Tipps und Hinweise bin ich sehr dankbar
Simon
Angehängte Dateien
Dateityp: zip jsAlphaTween.zip (4,0 KB, 6x aufgerufen)
soundZ ist offline   Mit Zitat antworten
Alt 25-05-2010, 13:45   #2 (permalink)
Neuer User
 
Registriert seit: Aug 2009
Beiträge: 15
so ungefähr bin noch am rumprobieren:

function opacity(target,value)
{
target.filter = 'alpha(opacity='+(value*100)+')';
target.opacity = value;
}


window.onload = function(){


JSTweener.addTween(document.getElementById('banner ').style, {
time: 3,
transition: 'linear',
onUpdate:function()
{
var d = new Date();
var progress = 1-(this.endTime - d.getTime()) / (this.time*1000);
trace(progress);

opacity(this.target,progress);
},
width: 200,
height: 200,
left: 500,
top: 300
});

js tweener macht fürn flasher einfach am meisten sinn. kannst natürlich auch jquery benutzen.... ich kann damit nichts anfangen.

EDIT:
wenn ihr tracen wollt wie in flash dann: (nur SF und FF)

function trace()
{
try{console.log(trace.arguments)}catch(e){return;}
}
__________________
if(true) trace("jajajajajajajajaja");
else trace("hgjfhfggj");

Geändert von mk-anti (25-05-2010 um 14:07 Uhr)
mk-anti ist offline   Mit Zitat antworten
Alt 25-05-2010, 15:02   #3 (permalink)
nobody is perfect
 
Benutzerbild von richtsteiger
 
Registriert seit: Jul 2004
Ort: munich
Beiträge: 876
Zitat:
Zitat von mk-anti Beitrag anzeigen
...
EDIT:
wenn ihr tracen wollt wie in flash dann: (nur SF und FF)
...
Da es ja hier um ein IE-Problem geht, wäre es schon toll, auch im IE zu "tracen",
oder ? Und entgegen deiner Aussage geht das sehr wohl. Man braucht halt nur
Companion.JS, den JavaScript-Debugger für den IE. Dann hast du auch 'ne
Konsole. Oder du schaust dir gleich die DebugBar an. Beides für mich
unersetzliche Tools für's Bugfixing in den IEs.

Ciao
Ralf
__________________
XING
richtsteiger ist offline   Mit Zitat antworten
Alt 25-05-2010, 17:40   #4 (permalink)
copy
 
Registriert seit: Jul 2004
Ort: Hamburch
Beiträge: 301
... oder alles vergessen und einfach JQuery nehmen :-)
soundZ 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 11:59 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele