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

jQuery-Effekt Methode animate()

Effektmethoden in jQuery

Die Methode animate() führt eine benutzerdefinierte Animation für eine Gruppe von CSS-Eigenschaften aus.

Die Animation ermöglicht einen Übergang von einer CSS-Style-Konfiguration zur anderen.

Alle Animationseigenschaften sollten auf einen einzigen Wert gesetzt werden (z.B. Breite, Höhe oder linker Wert).

Außer der Zeichenkette "show", "hide" und "toggle" können keine Zeichenkettenwerte animiert werden (z.B. Hintergrundfarbe). Diese Werte erlauben das Verbergen und Zeigen von animierten Elementen.

Die Animationseigenschaften können auch relativ sein. Wenn einem Wert ein führender+= oder-=Zeichenfolge, dann wird der Zielwert durch Hinzufügen oder Subtrahieren der angegebenen Zahl vom aktuellen Wert des Attributes berechnet.

Neben Stileigenschaften können auch bestimmte nicht-stileigenschaften (z.B. scrollTop und scrollLeft) animiert werden.

Syntax1:

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

Syntax2:

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

示例

Durch Ändern der Breite eines Elements wird die Animation des Elements festgelegt:

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

Durch Ändern der Breite und Höhe eines Elements wird eine Animation erzeugt:

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

Durch Übergeben mehrerer Stileigenschaften und -werte wird ein Element animiert:

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

Verwenden Sie animate() mitderDauer und EasingderParameter:

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

Verwenden Sie animate() zusammen mit einer Callback-Funktion:

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

Verwenden Sie die alternative Syntax, um mehrere Animationen {styles} und {options} zu spezifizieren:

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

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

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

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

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

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

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

参数值(语法1)

$(selector).animate({styles}, duration, easing, callback)
ParameterBeschreibung
stylesErforderlich. Eine oder mehrere CSS-Attribute, die den Animationseffekt erzeugen, spezifizieren/值。
注意:与animate()方法一起使用时,属性名称必须为驼峰式:是paddingTop而不是padding-top,marginLeft而不是margin-left以及依此类推
duration(可选)确定动画将运行多长时间的字符串或数字。预设值为400毫秒

可能的值:

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

  • “fast”

  • “slow”

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

可能的值:

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

  • “linear”-以恒定速度移动

callback(可选)animate 函数执行完之后,要执行的函数。

参数值(语法2)

$(selector).animate({styles}, {options})
ParameterBeschreibung
stylesErforderlich. Eine oder mehrere CSS-Attribute, die den Animationseffekt erzeugen, spezifizieren/Wert (wie oben).
options(Optional) Weitere Optionen für die Animation spezifizieren

Optionalwert:

  • duration Ein String oder eine Zahl, die bestimmen, wie lange die Animation läuft

  • easing Ein String, der angibt, welche Easing-Funktion im Übergang verwendet werden soll

  • complete -Funktion, die nach Abschluss der Animation aufgerufen wird

  • step -Funktion, die für jede Animationselement und jeden Animationseigenschaft aufgerufen wird

  • progress -Funktion, die nach jedem Schritt der Animation ausgeführt wird

  • queue-Ein boolescher Wert, der angibt, ob die Animation in die Effekt-Warteschlange eingefügt wird

  • specialEasing -vonstylesAbbildung einer oder mehrerer CSS-Attribute und deren zugehöriger Easing-Funktionen

  • start -Funktion, die am Anfang der Animation ausgeführt wird

  • done -Funktion, die am Ende der Animation ausgeführt wird

  • fail -Funktion, die ausgeführt wird, wenn die Animation nicht abgeschlossen werden kann

  • always -Funktion, die ausgeführt wird, wenn die Animation gestoppt wird, aber noch nicht abgeschlossen ist

Effektmethoden in jQuery