smoke.js是一款基于HTML5 Canvas的逼真烟雾特效js插件。通过该js插件,可以非常轻松的在页面中制作出各种烟雾效果。
使用方法
在页面中引入smoke.js文件。
<script type="text/javascript" src="js/smoke.js"></script>
HTML结构
使用一个<canvas>
元素作为容器。
<canvas id="canvas"></canvas>
初始化插件
在页面底部使用下面的方法来初始化该烟雾特效插件。
var canvas = document.getElementById('canvas') var ctx = canvas.getContext('2d') canvas.width = 1000 canvas.height = 1000 var party = smokemachine(ctx, [54, 16.8, 18.2]) party.start() // start animating party.addsmoke(500,500,10) // wow we made smoke setTimeout(function(){ party.stop() // stop animating party.addsmoke(600,500,100) party.addsmoke(500,600,20) for(var i=0;i<10;i++){ party.step(10) // pretend 10 ms pass and rerender } setTimeout(function(){ party.start() },1000) },1000)
API
该烟雾特效插件可用的API有:
smokemachine(context, [r,g,b])
:返回一个烟雾实例。- context —— 绘制烟雾的画布。
- [r,g,b] —— (可选)烟雾的颜色。
var party = smokemachine(context, [1,5,253])
party.start()
:开始烟雾动画。party.stop()
:结束烟雾动画。party.addsmoke(x,y,numberofparticles)
:- x,y — 在canvas中创建的烟雾的坐标。
- numberofparticles — 创建更多的烟雾。
party.step(milliseconds)
:在多少毫秒之后重新绘制烟雾。
smoke.js烟雾特效插件的github地址为:https://github.com/bijection/smoke.js