English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Méthode animate() de l'effet jQuery

Méthodes d'effets jQuery

La méthode animate() effectue des animations personnalisées sur un ensemble de propriétés CSS.

Les animations permettent de créer des transitions animées entre une configuration de style CSS et une autre.

Toutes les propriétés d'animation doivent être définies sur une valeur numérique unique (par exemple, la largeur, la hauteur ou la valeur de gauche).

Les valeurs de chaîne ne peuvent pas être définies pour les animations, à l'exception des chaînes "show", "hide" et "toggle" (par exemple, la couleur d'arrière-plan). Ces valeurs permettent de cacher et de montrer des éléments animés.

Les propriétés d'animation peuvent également être relatives. Si une valeur est fournie avec un préfixe+= ou-= chaîne de caractères, alors la valeur cible est calculée en ajoutant ou en soustrayant le nombre donné à la valeur actuelle de l'attribut.

En plus des propriétés de style, vous pouvez animer certaines propriétés non stylistiques (par exemple : scrollTop et scrollLeft).

Syntaxe1:

$(selector).animer({styles}, duration, easing, callback)

Syntaxe2:

$(selector).animer({styles}, {options})

示例

Animez un élément en changeant sa largeur :

$("#btn1").click(function() {
  $("div").animate({width: "500px");
});
测试看看‹/›

Animez un élément en changeant sa largeur et sa hauteur :

$("#btn1").click(function() {
  $("div").animate({width: "500px");
  $("div").animate({height: "400px");
});
测试看看‹/›

Animez un élément en passant plusieurs propriétés de style et leurs valeurs :

$("#btn1").click(function() {
  $("div").animate({
     width:"500px",
     height:"400px"
  });
});
测试看看‹/›

Utilisez animate() avec :deduration et easingdeParamètres :

$("button").click(function(){
  $("div").animate({width:"500px", height:"400px"}, 4000, "linear");
});
测试看看‹/›

Utilisez animate() avec une fonction de rappel :

$("button").click(function(){
  $("div").animate({
    width:"500px",
    height:"400px"
  }, 500, "linear",
  function() {
    $(this).after("<h2>动画完成</>2用户滚动页面时添加平滑滚动:
  });
});
测试看看‹/›

Utilisez la syntaxe alternative pour spécifier plusieurs animations {styles} et {options} :

$("button").click(function(){
  $("div").animate({
    width:"500px",
    height:"400px"
  
    duration:500,
    easing:"linear",
    complete:function(){
      $(this).after("<h2>动画完成</>2用户滚动页面时添加平滑滚动:
    }
  });
});
测试看看‹/›

let size = $(".main").height();

获取".main" 高度 // $(window).keydown(function(event) {
if(event.which ===
  ) { 4如果按下向下箭头键 // else if(event.which ===
    $("html, body").animer({scrollTop: "+=" + size}, 300);
  } 38) { // 如果按下向上箭头键
    $("html, body").animer({scrollTop: "-=" + size}, 300);
  }
});
测试看看‹/›

使用相对值为所有段落设置动画:

$("p").click(function(){
  $(this).animer({
    fontSize: "+=5px",
    padding : "+=10px"
  });
});
测试看看‹/›

此外,我们甚至可以指定属性的动画值「show」、「hide」或「toggle」:

$("button").click(function(){
  $("div").animer({height: "toggle"});
});
测试看看‹/›

参数值(语法1)

$(selector).animer({styles}, duration, easing, callback)
ParamètresDescription
stylesRequis. Spécifiez un ou plusieurs attributs CSS générant l'effet d'animation/值。
注意:与animate()方法一起使用时,属性名称必须为驼峰式:是paddingTop而不是padding-top,marginLeft而不是margin-left以及依此类推
duration(可选)确定动画将运行多长时间的字符串或数字。预设值为400毫秒

可能的值:

  • 毫秒(例如100、500、2000等)

  • 「fast」

  • 「slow」

easing(可选)指定动画不同点中元素的速度。默认值是「swing」。

可能的值:

  • 「swing」-在开始/结束时移动较慢,而在中间移动较快

  • 「linear」-以恒定速度移动

callback(可选)动画执行完毕后要执行的函数。

参数值(语法2)

$(selector).animer({styles}, {options})
ParamètresDescription
stylesRequis. Spécifiez un ou plusieurs attributs CSS générant l'effet d'animation/Valeur (comme ci-dessus).
options(Optionnel)Spécifiez des options supplémentaires pour l'animation

Valeur optionnelle :

  • duration Une chaîne ou un nombre indiquant pendant combien de temps l'animation doit s'exécuter

  • easing Une chaîne indiquant la fonction d'accélération à utiliser pour la transition

  • complete -Fonction appelée après la fin de l'animation

  • step -Fonction appelée pour chaque attribut d'animation de chaque élément d'animation

  • progress -Fonction à exécuter après chaque étape de l'animation

  • queue-Un booléen indiquant si l'animation doit être placée dans la file d'attente des effets

  • specialEasing -DestylesMapping d'un ou plusieurs attributs CSS et de leurs fonctions d'accélération correspondantes

  • start -Fonction à exécuter au début de l'animation

  • done -Fonction à exécuter à la fin de l'animation

  • fail -Fonction à exécuter si l'animation ne peut pas être terminée

  • always -Fonction à exécuter si l'animation s'arrête mais n'est pas terminée

Méthodes d'effets jQuery