2017-01-06 14 views
0

ウェブページからポリマー元素を除去する際に問題があります。ウェブページからポリマー元素を正しく取り除く方法

リストアイテムにコンテンツが含まれている順序付けられていないリストを介してカルーセルを構築しました。このコンテンツの一部は単純なHTMLであり、一部は画像であり、一部は動画であり、一部はポリマー要素である。

いつも、<ul>は、jQuery .empty()コマンドでクリアされます。

私が直面している問題は、ポリマーの要素が正しくクリアされていないことです。

ポリマー要素の中には、コンテンツ(xmlと画像)を毎時取得するタイムアウトイベントがあります。ポリマー要素がページから削除された後に、クロム開発者ツールのネットワーク負荷を調べると、xmlとイメージが毎回読み込まれているのを確認することができます。したがって、ポリマー要素の一部はまだアクティブであり、おそらくシャドードームのどこかにあります。

埋め込まれたポリマー要素とそれに関連するすべての要素をウェブページから適切に削除するにはどうすればよいですか?

+1

タイマーを追加/削除するコードを表示するために質問を更新できますか? Polymerライフサイクルコールバックを使用している場合は、そのことを示すことが重要です。さらにうまくいけば、フィドル(コードペインなど)で再現可能なコードスニペットになります。 – tony19

答えて

2

私はだと思います。setTimeoutは、要素のスコープ内ではなくグローバルスコープ内で定義されています。

だから、既存のタイムアウトをキャンセルするためにあなたの要素に機能を切り離すライフサイクルにてclearTimeout機能を使用する必要があります。

+1

ここでは 'setTimeout()'が使われていると思いますか(Polymerの 'async()')? – tony19

+2

この文章のために: "ポリマー要素の中にタイムアウトイベントがあります"、多分私はその質問を誤解しました。 –

+0

OPは、setTimeout()の代わりにPolymerの 'async()'でOPが "タイムアウトイベント"を実装している可能性があります(そうでない場合でも、 'setTimeout'はどのように定義されませんか?私は、質問が関連するコードを含むように更新されたかどうかを調べるでしょう。 :) – tony19

関連する問題