问题描述
我正在寻找一种在点击不同容器时播放相同乐透动画的方法,但似乎无法实现。我该怎么做?
示例代码如下:
$('.lottie-container').on('click',function() {
playlottie($(this));
})
function playlottie(lottiecontainer) {
var animation = bodymovin.loadAnimation({
container: lottiecontainer,renderer: 'svg',loop: false,autoplay: false,path: "https://assets10.lottiefiles.com/packages/lf20_rd4wrn81.json"
});
animation.goToAndplay(0);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.5.3/lottie_svg.min.js"></script>
<div class="lottie-container">container1</div><br>
<div class="lottie-container">container2</div>
解决方法
我认为是因为脚本插件错误。
你可以看到你通过你的函数得到了对象。
$('.lottie-container').on('click',function() {
playlottie($(this));
})
function playlottie(lottiecontainer) {
console.log($(lottiecontainer).text());
var animation = bodymovin.loadAnimation({
container: $(lottiecontainer),renderer: 'svg',loop: false,autoplay: false,path: "https://assets10.lottiefiles.com/packages/lf20_rd4wrn81.json"
});
animation.goToAndPlay(0);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.5.3/lottie_svg.min.js"></script>
<div class="lottie-container">container1</div><br>
<div class="lottie-container">container2</div>