Canvas Animation是一个jQuery插件,它使用JavaScript和CSS样式将可控的连续动画应用于单个或多个元素。
1.将jQuery库(slim build)和jQuery Canvas Animation插件的JavaScript&Stylesheet插入到html文件中。
<link href="jquery.canvas-animation.min.css" rel="stylesheet"> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="jquery.canvas-animation.min.js"></script>
2.创建一组要设置动画的元素。
<div id="canvas" class="demo"> <div class="square red"></div> <div class="square green"></div> <div class="square blue"></div> </div>
3.通过向元素添加CSS类和持续时间来创建循序渐进的动画,如下所示:
var myConf = { steps : [ { addClass : 'ca-1', duration : 800 }, { addClass : 'ca-2', duration : 800 }, { addClass : 'ca-3', duration : 800 }, { addClass : 'ca-4', duration : 500 } ] };
4.将顺序动画应用于元素并完成。
$('#canvas').canvasAnimation(myConf);
5.用于自定义顺序动画的更多配置。
$('#canvas').canvasAnimation({ // starts the animation after this timeout // 0 = starts immediately timeout: 0, // reset duration in milliseconds resetDuration: 500, // infinite loop infinity: true, // enable autoplay autoplay : true, // enable controls controls: true, editor: { enable: false, // if true: show editor on page wrapper: '.jca-editor-container' // editor wrapper class }, // use icons from an icon framework instead of css icons useIcons: false, // icons icons: { backward: '<i class="fas fa-step-backward"></i>', play: '<i class="fas fa-play"></i>', pause: '<i class="fas fa-pause"></i>', stop: '<i class="fas fa-stop"></i>', forward: '<i class="fas fa-step-forward"></i>', expand: '<i class="fas fa-expand"></i>', editor: '<i class="fas fa-edit"></i>' }, // class of controls wrapper controlsWrapper: '.controls', // custom controls controlsTemplate: '<div class="controls">' + '<div class="backward #BACKWARD#"></div>' + '<div class="play #PLAY#"></div>' + '<div class="pause #PAUSE#"></div>' + '<div class="reset #RESET#"></div>' + '<div class="forward #FORWARD#"></div>' + '<div class="fullscreen #FULLSCREEN#"></div>' + '</div>', // class of step backward button backwardButton: '.backward', // class of step forward button forwardButton: '.forward', // class of play button playButton: '.play', // class of pause button pauseButton: '.pause', // class of reset button resetButton: '.reset', // class of reset button stopButton: '.jca-stop', // class of expand button expandButton: '.jca-expand', // class of edit button editorButton: '.jca-editor', // class of goto button / add data-step="step-name" gotoButton: '.jca-goto', // CSS class if the animation is done classDone: 'done', // CSS class if the animation is paused classWait: 'wait', // CSS class if user clicked forward classForward: 'forward', // CSS class if user clicked backward classBackward: 'backward', // class of elements wrapper classWrap: 'canvas-animation', });
7. Useful callback functions which will be fired when the animation starts or is paused/finished.
$('#canvas').canvasAnimation({ // called before first animation step onPlay: null, // called after last animation step onDone: null, // called if classWait was added onWait: null });
v2.1.0 (2021-11-14)
v2.0.0 (2018-08-11)
2018-05-06
2018-04-27
2018-04-22