个性化阅读
专注于IT技术分析

jQuery animate()

本文概述

jQuery animate()方法为你提供了一种创建自定义动画的方法。

句法:

$(selector).animate({params}, speed, callback);

在这里, params参数定义了要设置动画的CSS属性。

speed参数是可选的, 它指定效果的持续时间。可以将其设置为“慢”, “快”或毫秒。

callback参数也是可选的, 它是在动画完成后执行的功能。

让我们以一个简单的示例来看动画效果。

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script> 
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({left: '450px'});
    });
});
</script> 
</head>
<body>
<button>Start Animation</button>
<p>A simple animation example:</p>
<div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div>
</body>
</html>

立即测试

输出:

开始动画

一个简单的动画示例:

注意:所有HTML元素的默认位置都是静态的。如果要操纵它们的位置, 请将CSS position属性设置为元素的相对, 固定或绝对。

jQuery animate()方法使用多个属性

你可以使用多个属性同时设置动画。

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script> 
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
            left: '250px', opacity: '0.5', height: '150px', width: '150px'
        });
    });
});
</script> 
</head>
<body>
<button>Start Animation</button>
<div style="background:#125f21;height:100px;width:100px;position:absolute;"></div>
</body>
</html>

立即测试

输出:

开始动画

jQuery animate()方法使用相对值

你还可以通过在值前面加上+ =或-=来定义相对值(相对于元素的当前值)。

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script> 
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
            left: '250px', height: '+=150px', width: '+=150px'
        });
    });
});
</script> 
</head>
<body>
<button>Start Animation</button>
<div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div>
</body>
</html>

立即测试

输出:

开始动画

使用预定义值的jQuery animate()方法

你还可以将属性的动画值指定为“ show”, “ hide”或“ toggle”。

在此示例中, 我们使用“ toggle”值表示高度, 这表示它将显示/隐藏所选元素。

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script> 
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
            height: 'toggle'
        });
    });
});
</script> 
</head>
<body>
<button>Start Animation</button>
<div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div>
</body>
</html>

立即测试

输出:

开始动画

jQuery Color动画

你还可以为颜色之间的元素设置动画。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI Effects - Animate demo</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
  <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <style>
    .toggler { width: 500px; height: 200px; position: relative; }
    #button { padding: .5em 1em; text-decoration: none; }
    #effect { width: 240px; height: 135px; padding: 0.4em; position: relative; background: #fff; }
    #effect h3 { margin: 0; padding: 0.4em; text-align: center; }
  </style>
  <script>
  $(function() {
    var state = true;
    $( "#button" ).click(function() {
      if ( state ) {
        $( "#effect" ).animate({
          backgroundColor: "#aa0000", color: "#fff", width: 500
        }, 1000 );
      } else {
        $( "#effect" ).animate({
          backgroundColor: "#fff", color: "#000", width: 240
        }, 1000 );
      }
      state = !state;
    });
  });
  </script>
</head>
<body>
<div class="toggler">
  <div id="effect" class="ui-widget-content ui-corner-all">
    <h3 class="ui-widget-header ui-corner-all">Animate</h3>
    <p>srcmini02.com is the best tutorial website to learn Java and other programming languages.</p>
  </div>
</div>
 <button id="button" class="ui-state-default ui-corner-all">Toggle Effect</button>
</body>
</html>

立即测试

赞(0)
未经允许不得转载:srcmini » jQuery animate()

评论 抢沙发

评论前必须登录!