这是一款HTML5 canvas水波纹动画特效。该水波纹动画以插件的形式进行编写,可以是纯js插件,或通过jquery插件来进行调用。它能够制作出逼真的水波纹动画效果。/p>
使用方法
在页面中引入jquery和jquery.waterrippleeffect.min.js文件。
<script src='path/to/js/jquery.min.js'></script> <script src='path/to/js/jquery.waterrippleeffect.min.js'></script>
HTML结构
使用一个<div>
作为该水波纹动画特效的HTML结构:
<div id="holder"></div>
初始化插件
通过纯js的方式来调用该水波纹动画效果的代码如下:
function init() { //Settings - params for WaterRippleEffect var settings = { image: './img/SwimmingPool.jpg',//背景图片 rippleRadius: 3,//radius of the ripple width: 480,//width height: 480,//height delay: 1,//if auto param === true. 1 === 1 second delay for animation auto: true//if auto param === true, animation starts on it´s own }; //------------------------------------------------------------------------ //standalone //初始化 var waterRippleEffect = new WaterRippleEffect( document.getElementById( 'holder' ), settings ); document.getElementById( 'holder' ).style.cursor = 'pointer'; //鼠标点击事件 document.getElementById( 'holder' ).addEventListener( 'click', function( e ) { var mouseX = e.layerX; var mouseY = e.layerY; waterRippleEffect.disturb( mouseX, mouseY ); } ); //鼠标移动事件 document.getElementById( 'holder' ).addEventListener( 'mousemove', function( e ) { var mouseX = e.layerX; var mouseY = e.layerY; waterRippleEffect.disturb( mouseX, mouseY ); } );
通过jquery插件的方式来调用该水波纹动画效果的代码如下:
$( '#holder' ).waterRippleEffect( settings ); $( '#holder' ).css( 'cursor', 'pointer' ); //鼠标点击事件 $( '#holder' ).click( function( e ) { var mouseX = e.pageX - $( this ).offset().left; var mouseY = e.pageY - $( this ).offset().top; $( '#holder' ).waterRippleEffect( "disturb", mouseX, mouseY ); } ); //鼠标移动事件 $( '#holder' ).mousemove( function( e ) { var mouseX = e.pageX - $( this ).offset().left; var mouseY = e.pageY - $( this ).offset().top; $( '#holder' ).waterRippleEffect( "disturb", mouseX, mouseY ); } );
该HTML5 canvas水波纹动画特效的官方地址为:http://blog.niklasknaack.de/2017/03/water-ripple-effect-jquery-plugin.html