这篇文章主要为大家展示了微信小程序开发中怎么实现animation循环动画,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“微信小程序开发中怎么实现animation循环动画”这篇文章吧。
实现代码:
index.wxml
<view class="clouds"> <image animation="{{animationCloudData}}" class="yun1" src="../../img/yun1.png"></image></view>
index.js
onReady: function () {// 页面渲染完成// 实例化一个动画var that = this;var i = 0var ii = 0var animationData = wx.createAnimation({ duration: 1000, // 默认为400 动画持续时间,单位ms timingFunction: 'ease-in-out', //transformOrigin: '4px 91px'});var animationCloudData = wx.createAnimation({ duration: 1000, // 默认为400 动画持续时间,单位ms timingFunction: 'ease-in-out', //transformOrigin: '4px 91px'});// 顺序执行,当已经执行完上面的代码就会开启定时器// 循环执行代码//dotAnFun = setInterval(function () {}); /*setInterval(function () {
// 动画脚本定义
//animationData.rotate(6 * (++i)).step()
//animationData.scale(2, 2).rotate(45).step().scale(1, 1).step();
animationData.translateY(10).step({ duration: 500 }).translateY(-10).step({ duration: 500 });
// 更新数据
that.setData({
// 导出动画示例
animationData: animationData.export(),
//animationCloudData: animationCloudData.export(),
})
++i;
console.log(i);
}.bind(that), 2000);//循环时间 这里1000是1秒
*///动画的脚本定义必须每次都重新生成,不能放在循环外animationCloudData.translateX(200).step({ duration: 5000 }).translateX(0).step({ duration: 5000 });// 更新数据that.setData({ // 导出动画示例 //animationData: animationData.export(), animationCloudData: animationCloudData.export(),
})
setInterval(function () { //动画的脚本定义必须每次都重新生成,不能放在循环外 animationCloudData.translateX(300).step({ duration: 5000 }).translateX(-100).step({ duration: 5000 }); // 更新数据 that.setData({// 导出动画示例//animationData: animationData.export(),animationCloudData: animationCloudData.export(),
})
++ii; console.log(ii);
}.bind(that),10000);//3000这里的设置如果小于动画step的持续时间的话会导致执行一半后出错
}
index.wxss
.clouds{ margin-top:320rpx;
}.yun1{ width:320rpx; height: 120rpx;
}
附:参考备用:/*
var that = this;
// 页面渲染完成
//实例化一个动画
var animation = wx.createAnimation({
duration: 1000,
timingFunction: 'ease',
})
this.animation = animation
animation.scale(2, 2).rotate(45).step().scale(1,1).step();
//导出动画
this.setData({
animationData: animation.export()
})
var i = 0;
// 顺序执行,当已经执行完上面的代码就会开启定时器
/*setTimeout(function () {
that.setData({
animationData: animation.export()
});
i++;
console.log(i);
}, 1000);*//*setInterval(function () {
//循环执行代码
that.setData({
animationData: animation.export()
});
i++;
console.log(i);
}, 1000) //循环时间 这里是1秒
}*/
小程序相对于开发者来说,开发难度较低,可节约开发和运营成本,让开发者可以快速地开发一个小程序。并且小程序可在微信内被便捷地获取和传播,能够满足基础的生活应用,符合生活服务类线下商铺以及非刚需低频应用的转换。对于用户而言,能够节约使用时间成本和手机内存空间,同时具有优异的使用体验。
以上就是关于“微信小程序开发中怎么实现animation循环动画”的内容,如果该文章对您有所帮助并觉得写得不错,劳请分享给您的好友一起学习新知识,若想了解更多相关知识内容,请多多关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。