vue筆記之動畫2-鉤子函式
阿新 • • 發佈:2018-12-12
var vm = new Vue ({
el:'#app',
data:{
flag:false
},
methods: {
//動畫鉤子函式的第一個引數:el表示要執行動畫的DOM元素,是個原生的js DOM物件
//
beforeEnter(el){
// 表示動畫入場之前,動畫尚未開始,可以在beforeEnter中設定元素開始動畫之前的起始樣式
el.style.transform = "translate(0,0)"
},
enter(el,done){//當只用 JavaScript 過渡的時候,在 enter 和 leave 中必須使用 done 進行回撥。否則,它們將被同步呼叫,過渡會立即完成。
// 這句話沒有實際的作用,但是如果不寫,就沒有動畫效果
// el.offsetWidth;el.offsetHeight;el.offsetLeft都可以
el.offsetHeight;
// 表示動畫開始之後的樣式,這裡可以設定小球完成動畫之後的,結束狀態
el.style.transform = "translate(150px,450px)";
el.style.transition = "all 1s ease";
done();
},
afterEnter(el){
// 動畫完成之後,會呼叫afterEnter
this.flag = !this.flag;
}
}
});