2017-04-26 9 views
0

Ich habe eine Svg, die ein Bild mit einer Maske hat, ist das Bild ein animiertes GIF. Ich verwende dann TweenlineLite, um es über den Bildschirm zu bewegen. Dies funktioniert in allen Browsern außer Safari. In Safari animierte es sich über den Bildschirm, aber das animierte GIF funktioniert nicht! Wenn ich jedoch die Anfangsposition der Svg auf dem Bildschirm ändere, animiert das Gif.Safari nicht animieren gif in svg mit Grünsock

Irgendwelche Ideen, was dieser Safari Bug ist? hier ist ein codepen des Codes codepen

var raven = document.getElementById("js-raven"), 
width = $(window).width() + 200, 

tl = new TimelineLite({ 
    delay: 2, 
    onComplete: function() { 
     this.restart(); 
    } 
}); 
tl 
.from(raven, 0, {x: -200}) 
.to(raven, 20, { x: width }) 
.to(raven, 0, { x: width, rotationY: 180, delay: 5 }) 
.to(raven, 40, { x: -width }); 
+0

Dies ist der Bug Tracker für Webkit, Sie können es suchen und/oder Ihren Bug dort auslösen. https://bugs.webkit.org/query.cgi?format=specific&product=WebKit –

+0

danke @RobertLongson, ist das ein Bug oder etwas, was ich getan habe. Ich habe bemerkt, dass wenn ich auch das Bild als ein Img-Tag hinzufügen animiert es gut, aber es scheint, ich muss die Grafik auf dem Bildschirm haben – Adam

+0

@RobertLongson Kennen Sie eine Arbeit für diese? – Adam

Antwort

0

ich einen Weg, um dieses Problem/Fehler entdeckt.

einen Tag mit dem gleichen animierte GIF-Datei fest und machen die Abmessungen von 1 x 1

zB

<img src="resources/images/raven.gif" width="1" height="1"> 

Dies ist dann der Bildschirm zu animieren off ermöglicht und haben immer noch die gif spielen