基于jquery fly插件实现加入购物车抛物线动画效果


Posted in Javascript onApril 05, 2016

先给大家展示下效果图:

基于jquery fly插件实现加入购物车抛物线动画效果

在购物网站中,加入购物车的功能是必须的功能,有的网站在用户点击加入购物车按钮时,就会出现该商品从点击出以抛物线的动画相似加入购物车,这个功能看起来非常炫,对用户体验也有一定的提高。下面介绍基于jquery fly插件实现加入购物车抛物线动画效果。

使用jquery.fly插件很方便时实现抛物线动画加入购物车的功能

一、插件下载

插件官方:https://github.com/amibug/fly

二、载入jQuery库文件和jquery.fly.min.js插件

<script src="jquery.js"></script> 
<script src="jquery.fly.min.js"></script>

三、加入购物车动画飞入效果实例

我们要实现的效果是:当点击“加入购物车”按钮后,商品图片会变成一个缩小的圆球,以按钮为起点,向右侧以抛物线的形式飞出到右侧的购物车里。在飞出之前,我们要获取当前商品的图片,然后调用fly插件,之后的抛物线轨迹都是由fly插件完成,我们只需定义起点和终点左边以及结束后销毁之前的动画。

<div class="container">
<div class="demo clearfix">
<div class="per">
<img src="images/1.jpg" width="180" height="240" alt="图片二"/>
<div class="title">aaa</div>
<a href="javascript:void(0);" class="button orange addcart">加入购物车</a>
</div>
<div class="per">
<img src="images/2.jpg" width="180" height="240" alt="图片二"/>
<div class="title">bbb</div>
<a href="javascript:void(0);" class="button orange addcart">加入购物车</a>
</div>
</div>
</div>
<div class="cart-sidebar">
<div class="cart">
<i id="icon-cart"></i>
<span>购物车</span>
</div>
</div>
<div id="tip">成功加入购物车!</div>
<script>
$(function() { 
var offset = $("#icon-cart").offset(); 
$(".addcart").click(function(event) { 
var img = $(this).parent().children('img').attr('src'); //获取当前点击图片链接 
var flyer = $('<img class="flyer-img" src="' + img + '">'); //抛物体对象 
flyer.fly({ 
start: { 
left: event.pageX,//抛物体起点横坐标 
top: event.pageY //抛物体起点纵坐标 
}, 
end: { 
left: offset.left + 10,//抛物体终点横坐标 
top: offset.top + 10, //抛物体终点纵坐标 
}, 
onEnd: function() { 
$("#tip").show().animate({width: '200px'},300).fadeOut(500);////成功加入购物车动画效果 
this.destory(); //销毁抛物体 
} 
}); 
}); 
});
<script>

备注

IE10以下需要添加以下js:

<script src="requestAnimationFrame.js"></script>

以上所述是针对jquery fly插件实现加入购物车抛物线动画效果,希望对大家有所帮助!

Javascript 相关文章推荐
JS实现局部选择打印和局部不选择打印
Apr 03 Javascript
js监听鼠标事件控制textarea输入字符串的个数
Sep 29 Javascript
JQuery中serialize() 序列化
Mar 13 Javascript
简单解析JavaScript中的__proto__属性
May 10 Javascript
深入解析JavaScript中的立即执行函数
May 21 Javascript
js实现弹窗居中的简单实例
Oct 09 Javascript
利用jQuery异步上传文件的插件用法详解
Jul 19 jQuery
解决canvas画布使用fillRect()时高度出现双倍效果的问题
Aug 03 Javascript
JavaScript根据json生成html表格的示例代码
Oct 24 Javascript
基于Vue插入视频的2种方法小结
Apr 02 Javascript
Layui多选只有最后一个值的解决方法
Sep 02 Javascript
vue data对象重新赋值无效(未更改)的解决方式
Jul 24 Javascript
JS简单编号生成器实现方法(附demo源码下载)
Apr 05 #Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
Apr 05 #Javascript
JavaScript图像延迟加载库Echo.js
Apr 05 #Javascript
超漂亮的Bootstrap 富文本编辑器summernote
Apr 05 #Javascript
jQuery技巧之让任何组件都支持类似DOM的事件管理
Apr 05 #Javascript
JS+CSS实现闪烁字体效果代码
Apr 05 #Javascript
js拖拽的原型声明和用法总结
Apr 04 #Javascript
You might like
在线增减.htpasswd内的用户
2006/10/09 PHP
php时间戳格式化显示友好的时间函数分享
2014/10/21 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
学习ExtJS Window常用方法
2009/10/07 Javascript
jquery中ajax学习笔记一
2011/10/16 Javascript
JavaScript/jQuery 表单美化插件小结
2012/02/14 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
2015/02/20 Javascript
jquery控制显示服务器生成的图片流
2015/08/04 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
Vue服务端渲染实践之Web应用首屏耗时最优化方案
2019/03/22 Javascript
vue组件中iview的modal组件爬坑问题之modal的显示与否应该是使用v-show
2019/04/12 Javascript
vue从零实现一个消息通知组件的方法详解
2020/03/16 Javascript
JavaScript实现网页下拉菜单效果
2020/11/20 Javascript
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
[51:10]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python实现matplotlib显示中文的方法详解
2018/02/06 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
2019/01/17 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
python或C++读取指定文件夹下的所有图片
2019/08/31 Python
Python timeit模块的使用实践
2020/01/13 Python
Python实现弹球小游戏
2020/08/01 Python
.net C#面试题
2012/08/28 面试题
百度JavaScript笔试题
2015/01/15 面试题
体育教育专业自荐信范文
2013/12/20 职场文书
《都江堰》教学反思
2014/02/07 职场文书
四查四看剖析材料
2014/02/14 职场文书
行政办公室岗位职责
2014/03/18 职场文书
自我鉴定书
2014/03/24 职场文书
2015年秋季运动会加油稿
2015/07/22 职场文书
高质量“欢迎词”
2019/04/03 职场文书
python中的装饰器该如何使用
2021/06/18 Python