我的代碼如下。任何想法我怎麼能稱之爲這個?我正在嘗試使用GSAP的TweenMax和一個名爲CSSRulePlugin的插件來爲僞元素設置動畫。帶GSAP的ES6類說不能補間null對象
class animate {
constructor() {
this.rule = CSSRulePlugin.getRule(".menu a:before");
this.target = document.querySelectorAll(".menu a");
}
init() {
for (let i = 0; i < this.target.length; i++) {
this.handleClick(i);
}
}
handleClick(index) {
this.target[index].addEventListener('mouseenter', (event) => {
event.preventDefault();
TweenMax.to(this.rule, 0.2, {cssrule:{x: '+10px'}});
});
}
}
let Animate = new animate();
Animate.init();
保持說can not Tween null object
。我究竟做錯了什麼?
你可能有'this.target.length'元素,但是你沒有那麼多的規則。順便說一句,「self」變量的目的是什麼? – 2016-12-04 06:31:18
我用自己,因爲當我嘗試使用this.trigger [索引]的代碼不起作用。 – TheEarlyMan
'TweenMax.to'如何知道應用哪個元素?看起來'self.rule [index]'應該是'self.target [index]',或者更好:'event.currentTarget'。 –