animation jquery définir une vitesse uniforme

WBOY
Libérer: 2023-05-11 19:02:07
original
690 Les gens l'ont consulté

Dans le développement Web, les effets d'animation sont très courants. Les effets d'animation peuvent améliorer l'expérience utilisateur et rendre les pages Web plus vivantes et plus intéressantes. Dans le processus de réalisation d'effets d'animation, jQuery est un outil très couramment utilisé. Il nous fournit des méthodes de configuration d'animation riches et pratiques, y compris la configuration d'une animation uniforme.

Animation à vitesse constante, c'est-à-dire que la vitesse de l'objet reste toujours inchangée pendant le processus d'animation. C'est plus simple que d'autres types d'effets d'animation, mais c'est très pratique dans certains scénarios. Alors, comment définir une animation uniforme dans jQuery ? Présentons-le en détail ci-dessous.

Tout d'abord, la méthode que vous devez utiliser pour définir une animation uniforme dans jQuery est animate(). Grâce à la méthode animate(), nous pouvons implémenter des effets d'animation personnalisés pour des éléments spécifiés. Dans cette méthode, nous pouvons utiliser le paramètre step pour spécifier l'effet d'une animation uniforme.

Alors, quel est le paramètre step ? En termes simples, c'est une fonction qui est appelée à chaque image de l'animation. Nous pouvons obtenir différents effets d'animation en définissant une logique appropriée dans la fonction step. Définissez le paramètre step sur une fonction, l'exemple est le suivant :

$(selector).animate({
    // 动画的属性和值
},
{
    duration: 1000, // 动画执行的时间
    step: function (now, fx) {
        // 设置匀速动画
    }
});
Copier après la connexion

Dans le code ci-dessus, nous définissons le temps d'exécution de l'animation via le deuxième paramètre de la méthode animate(). Le paramètre step représente la fonction de rappel qui sera appelée à chaque image du processus d'animation. Cette fonction de rappel a deux paramètres, représente désormais la valeur d'attribut actuelle (peut être un nombre ou une chaîne) et fx représente l'objet d'animation actuel.

Dans la fonction step(), nous pouvons réaliser une animation uniforme en opérant sur l'attribut now. La mise en œuvre d'une animation uniforme consiste à faire en sorte que la valeur de now augmente à mesure que le temps change, au lieu d'accélérer ou de décélérer. Ici, nous pouvons calculer la valeur de now grâce à une formule simple : now = start + (end - start)*p, où start et end sont respectivement la valeur de début et la valeur de fin de l'attribut, et p représente l'heure actuelle dans le total. proportion dans le temps, sa valeur est comprise entre 0 et 1.

Ce qui suit est un exemple simple pour montrer comment implémenter une animation uniforme dans jQuery :

Code HTML :

<div id="box"></div>
Copier après la connexion

Code CSS :

#box {
    width: 100px;
    height: 100px;
    background-color: red;
    position: absolute;
    left: 0;
}
Copier après la connexion

Code JS :

$(document).ready(function () {
    $("#box").animate({
        left: "400px"
    },
    {
        duration: 5000,
        step: function (now, fx) {
            $(this).css("left", now);
        }
    });
});
Copier après la connexion

Dans cet exemple, nous aurons une largeur et une hauteur. L'élément div, à la fois de 100 px et avec une couleur d'arrière-plan rouge, s'est déplacé de 400 px vers la droite et a mis 5 secondes à s'exécuter. Dans la fonction step(), nous définissons la valeur actuelle de l'attribut gauche sur la valeur now, obtenant ainsi un effet d'animation mobile uniforme.

Ainsi, en utilisant la méthode ci-dessus, nous pouvons facilement définir un effet d'animation uniforme dans jQuery. Bien sûr, dans le développement actuel, en plus de l'animation uniforme, il existe de nombreux autres types d'effets d'animation que nous devons comprendre et apprendre. Grâce à une pratique et une accumulation continues, nous pouvons mieux maîtriser les méthodes de paramétrage d'animation de jQuery, obtenant ainsi des effets d'animation de pages Web plus riches, plus vivants et plus intéressants.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal