<div>
は、CSSを使用してアニメーション化するPolymerテンプレート内にあります。特定のオブザーバー関数(onTriggered
)が呼び出されるたびにアニメーションを再トリガーできるようにしたい。Polymer:クラスの追加と削除
私は、オブザーバーが再び呼び出されたときに再度トリガーできるように、CSSクラスを追加してから削除しようとしましたが、Cannot read property 'myContainer' of undefined
を返します。これは、Javascriptの関数内で呼び出すことができないPolymerオブジェクトが原因であると理解していますが、代替の解決策が見つかりません。同期(x
秒後)ポリマー要素にCSSクラスを削除し、その後追加とするための最良の方法だろう何
onTriggered: function (newData, oldData) {
if (oldData && oldData !== newData) {
this.$.myContainer.classList.add("animated", "jello");
setTimeout(function() {
this.$.myContainer.classList.remove("animated", "jello");
}, 1000);
}
}
?
感謝を持っていました!スコープは確かに問題でした。あなたのコードは直接動作するようには見えませんでしたが、これを変数に代入するとトラックができました! – Dean
テストなしでそれを書きました:)) – Kejt