一、安裝
1、直接引入cdn
<script src="https://cdn.jsdelivr.net/npm/svgaplayerweb@2.0.7/build/svga.min.js"></script>
2、npm
npm install svgaplayerweb --save
二、使用
1、法一
- 在使用時引入安裝包
import SVGA from 'svgaplayerweb';
- 設置Dom節點
<div id="demoCanvas" style="width: 300px; height: 300px"></div>
- 加載動畫
var svgUrl = 'http://sl.file.diaodiaosocial.com/1595325777179.svga';
var player = new SVGA.Player('#demoCanvas');
var parser = new SVGA.Parser('#demoCanvas'); // 如果你需要支持 IE6+,那么必須把同樣的選擇器傳給 Parser。
parser.load(svgUrl, function(videoItem) {
player.loops=1; // 設置循環播放次數是1,0是無限播放 player.setVideoItem(videoItem); player.startAnimation(); player.onFinished(function(){ alert("動畫停止了!!!娃哈哈") }); })
1、法二
- 自動加載動畫
<!-- 默認播放-循環播放 --> <div style="width: 300px; height: 300px" src="http://sl.file.diaodiaosocial.com/1595325777179.svga" loops="0" clearsAfterStop="true"></div>
<!-- 默認播放-播放一次 -->
<div style="width: 300px; height: 300px" src="http://sl.file.diaodiaosocial.com/1595325777179.svga" loops="1" clearsAfterStop="true"></div>
下面貼上2種方法的完整代碼
<!DOCTYPE HTML> <html> <head> <title>svgaTest</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style> #box { width: 100vh; height: 100vh; } #demoCanvas { width: 300px; height: 300px; margin: 0 auto; border: 2px salmon solid; } .defaultCanvas { width: 300px; height: 300px; margin: 0 auto; border: 2px black solid; } </style> </head> <body> <div id="box" > <button onclick="toAnimation()">開始播放動畫</button> <button onclick="pauseAnimation()">暫停在當前幀</button> <button onclick="stopAnimation()">停止播放動畫</button> <div id="demoCanvas"></div> <!-- 默認播放-循環播放 --> <div class="defaultCanvas" src="http://sl.file.diaodiaosocial.com/1595325777179.svga" loops="0" clearsAfterStop="true"></div> <!-- 默認播放-播放一次 --> <div class="defaultCanvas" src="http://sl.file.diaodiaosocial.com/1595325777179.svga" loops="1" clearsAfterStop="true"></div> </div> <script src="https://cdn.jsdelivr.net/npm/svgaplayerweb@2.0.7/build/svga.min.js"></script> <script> var player = new SVGA.Player('#demoCanvas'); var parser = new SVGA.Parser('#demoCanvas'); // 如果你需要支持 IE6+,那么必須把同樣的選擇器傳給 Parser。 player.clearsAfterStop=false; //開始播放動畫 function toAnimation(){ parser.load('http://sl.file.diaodiaosocial.com/1595325777179.svga', function(videoItem) { player.loops=1; // 設置循環播放次數是1 player.setVideoItem(videoItem); player.startAnimation(); player.onFinished(function(){ alert("動畫停止了!!!娃哈哈") }); }) } //暫停在當前幀 function pauseAnimation(){ player.pauseAnimation(); } //停止播放動畫,如果 clearsAfterStop === true,將會清空畫布 function stopAnimation(){ player.stopAnimation(); } </script> </body> </html>