jquery抛物线动画代码怎么实现

JavaScript015

jquery抛物线动画代码怎么实现,第1张

方法/步骤

1

首先需要引入一个jquery.fly.min.js文件(可自行搜索,也可以在本人的百度云盘中找到)

2

设置抛物线的位置(起点也可以是整个页面的可点击区域,即body):

抛物线起点,此例中为.left_btn(标签的classname)

抛物线终点,此例中为.gwcimg(标签的classname)

3

创建JS方法:

$('.left_btn').on('click', addProduct)

function addProduct(event){

var offset = $(".gwcimg").offset(),

//抛物线图片,可自行更改

flyer = $('<img src="brandmarket/image/gwc.png" width="36" height="36">')

flyer.fly({

start: {

left: event.pageX,

top: event.pageY

},

end: {

left: offset.left,

top: offset.top,

//抛物线完成后留在页面上的图片大小

width: 20,height: 20

}

})

}

4

大致有两种效果,一种是每添加一次就在购物车的数字上加一,数字显示的位置可以用CSS样式控制,然后把上一步中“抛物线完成后留在页面上的图片大小”中宽高值都设置为0,效果如下:

5

另一种是将数字用图片代替,此为默认的效果,改变浏览器大小的时候,用来代替的图片会一直停留在绝对位置,效果如下:

http://jingyan.baidu.com/article/ceb9fb10c13bac8cac2ba05a.html

可以做一个animation,举一个例子,让一个元素在某一个范围之内,左距离和上距离同时改变。但是,弧线要让两个距离改变速度变化不一致,所以最好一个元素改变上方距离(可以是top也可是margin-top),里面嵌入一个元素改变左边距离。例如,假如你要让横轴均匀变化,纵轴不均匀变化,轨迹为⌒形,可以左变化为{from{margin-left:0px}to{margin-left:200px}},运动方式设为linear,然后上下变化可以{from{margin-top:100px}50%{margin-top:0px}to{margin-top:100px}},运动方式设为ease-in-out。由于时间仓促我没有具体实验过,而且表达可能不太清楚,请原谅。