Ma première question ici. :) p>
Je recherche une transition entre deux images où l'image se rétrécit d'abord dans une forme de cercle, puis le cercle se développe à nouveau sur l'autre image. Il est difficile d'expliquer et j'utilise peut-être les mauvais mots, car je ne trouve rien à ce sujet sur l'interwebz. p>
Je parle d'un effet comme les toons de façon méprise se terminant. http://www.youtube.com/watch?v=zuyiq-j5l9i p>
qui s'est rétrécissant à noir, peut-il être fait en JavaScript / JQuery? P>
4 Réponses :
Je suis venu cela, j'espère que c'est intéressant: http://www.netzgesta.de/transm/ . La transition cercles_out code> avec un cercle pourrait faire le travail que je pense. P>
Cela a l'air bien, bien que je n'ai pas encore été capable de le faire travailler. J'essaierai un peu plus cet après-midi.
Vous allez. http://jquery.malsup.com/cycle/ Vérifiez le zoom. Quelque chose peut être élaboré avec la partie de cercle. P>
Oui, j'ai trouvé celui-là, mais ce n'est pas ce dont j'ai besoin. Je ne veux pas rétrécir l'image elle-même, mais seulement l'espace autour de lui, une partie de plus en plus petite de l'image devient visible.
tl: dr strong> Comment puis-je commencer à décrire celui-ci? Il serait beaucoup plus facile si la norme CSS 2 Clip Standard supporta quelque chose d'ailleurs une valeur "rect", à savoir un "cercle" ou "ellipse", mais ... depuis que cela n'existe pas, j'ai fait de mon mieux pour pièce quelque chose ensemble cela fera ce que vous demandez. Les mises en garde sont nombreuses. On est que cela ne va pas travailler sur quelque chose avec une couleur de couleur unie dans le cas où vous vouliez que l'image puisse clipser à l'arrière-plan. Un autre est que lorsque j'ai essayé de prendre en compte le chronométrage de la mise à jour CSS à travers les navigateurs, le rendu n'est toujours pas "parfait". Mon approche initiale consistait à simplement animer le clip sur l'image qui devait être remplacée, mais cela n'a pas fonctionné en raison de la manière dont les mises à jour ont été apportées à la découpage via la fonction d'assouplissement du plug-in Ité. L'approche finale est ci-dessous. P> Le concept consiste à définir l'image en tant que propriété Ceci nécessitait un peu de fidélisation dans IE7, 8 et webkit navigateurs comme l'animation s'accrochait beaucoup plus proprement dans Firefox et IE9. Ce serait la variable Le code exemple est ci-dessous: p> le balisage fort > p> le CSS fort> p> Le script strong> < / p> " La compatibilité du navigateur est moins préoccupante, CSS3 est une option (bien que je suggère probablement de voir ce qui peut être fait avec la nouvelle toile HTML5 pour ce type d'animation). Il y a quelques choses à noter: p> La méthode est commentée en ligne ci-dessous: p> le CSS strong> p> le script fort> p>
Cela a l'air très bien, même si je vais probablement en avoir besoin pour travailler sur un fond aussi. J'aurais dû mention que, mais je ne savais pas à l'époque où j'ai posté la question. : - /
Mais j'ai pensé que je pouvais peut-être mettre l'image dans une DIV avec des frontières (CSS3) arrondies et rétrécir ce que Div. L'image d'arrière-plan sera tronquée à la frontière même si elle est arrondie, non? Ensuite, je n'ai besoin que d'animer la taille et la position de cette div et la position de l'arrière-plan. Dans IE et (Autres) Les navigateurs âgés, il animera comme une carrée, mais je peux vivre avec ça si cela me donnera la possibilité d'utiliser cette animation sur un fond. Je vais essayer de comprendre comment cette animation fonctionne et comment je peux l'adapter à mes besoins. Merci déjà pour la grande quantité d'effort.
@Goleztrol Eh bien, cela devient probablement beaucoup plus facile si vous ne vous souciez pas des solutions de navigateur croisée, pour ce que ça vaut. Cependant, dans le monde de IE7 / 8 ... OY ... Ouais, ce sera un gâchis sans flash ni similaire.
@Goleztrol Juste une mise à jour pour vous, utilisez simplement les normes CSS3, j'ai créé une démonstration de travail pour vous ici . Encore une fois, pas sans faille, mais une option. Je vais faire une édition pour expliquer dans la réponse ci-dessus.
@LTHIBODEAUX: Bien fait, cependant en chrome, les images tremblent.
#Goleztrol Je me rends compte que sur la solution CSS3. Malheureusement, il n'y a pas de tonne que je puisse faire à propos de la façon dont JQuery anime les attributs CSS. Les attributs ne sont pas tous mis à jour de manière synchrone. La gigue Palette se produit différemment en fonction de la façon dont vous commandez les attributs dans les paramètres de la fonction d'animation. Pourrait former une base décente pour que vous le prenne plus loin, cependant.
Les images sont un peu shaky indépendant, en particulier sur IE (9) et le chrome. J'ai vu ce même problème dans d'autres animations aussi, même dans les bibliothèques professionnelles. Donc, j'ai bien peur qu'il n'y ait pas grand chose que vous puissiez faire à ce sujet, à moins que vous ne soyez capable de rond de la taille et de la position du bon numéro (travailler avec des multiples de 2). Pour l'instant, je suis plus que ravi. Merci beaucoup pour votre aide!
- Cross-Browser: [** Voir une démonstration de travail
ici **] (http://jsfiddle.net/lthibodeaux/8dsjz/).
Bien, surtout travaillant ... et
navigateur croisé. Pourrait faire pire. ;]
- Solution purement CSS3: [** Voir une démonstration de travail
ici **] (http://jsfiddle.net/lthibodeaux/8dsjz/16/)
del> image de fond code> propriété de un conteneur comme un
position d'arrière-plan code> de
centre central code>, et la position
code> du conteneur à
relatif code> ou quelque chose de non-statique. La prochaine est de générer les éléments de découpage comme enfants du conteneur. Le premier est une position
: absolu code> Cercle de clipping image de la couleur de votre arrière-plan, transparent png ou gif (je préfère le premier), et les quatre suivants sont des divs, également avec
absolu < / code> positions code> gauche code>,
droit code>,
haut code> et
bas code> attributs défini sur 0 pour chacun des côtés respectifs, ils clipseront. L'idée est d'animer le
top code>,
gauche code>,
largeur code> et
hauteur code> de l'image cercle de clipping et synchronisation La largeur et la hauteur des DIV de découpage à l'aide de l'option Étape de rappel de l'appel à l'étape de l'appel () en les faisant correspondre à l'actuelle
gauche code> et
top code>. Entre animations, vous modifiez le
arrière-fond-image code> du conteneur sur la nouvelle image, puis démarrez l'animation dans la direction opposée. P>
ajuster code> que vous verrez dans la démonstration de travail. P>
à nouveau, la démo est située ici. strong> del> p> p>
J'ai essayé de plus et j'ai trouvé l'idée d'utiliser un élément