2017-01-06 4 views
0

Ich habe Probleme mit der Entfernung eines Polymerelements von meiner Webseite.So entfernen Sie ein Polymerelement ordnungsgemäß von einer Webseite

Ich habe ein Karussell über eine ungeordnete Liste, die Elemente enthalten Inhalt enthalten. Einige dieser Inhalte sind einfache HTML, einige sind Bilder, einige sind Videos und einige sind Polymerelemente.

Ab und zu wird die <ul> über einen jQuery .empty() Befehl gelöscht.

Das Problem, mit dem ich konfrontiert bin, ist, dass die Polymerelemente nicht korrekt gelöscht werden.

Innerhalb der Polymer-Elemente sind Timeout-Ereignisse, die Inhalt (xml und Bilder) hin und wieder abrufen. Bei der Untersuchung der Netzwerklast in den Chrome-Entwicklertools NACHDEM das Polymerelement von der Seite entfernt wurde, können Sie immer noch sehen, dass die XML-Datei und die Bilder immer wieder geladen werden. Ein Teil des Polymerelements ist also immer noch aktiv, höchstwahrscheinlich irgendwo im Schattenbereich.

Wie entferne ich ein eingebettetes Polymerelement und alles, was damit verbunden ist, ordnungsgemäß von meiner Webseite?

+1

Können Sie die Frage aktualisieren, um den Code anzuzeigen, der die Timer hinzufügt/entfernt? Wenn Sie Polymer Lifecycle Callbacks verwenden, ist es wichtig, dies zu zeigen. Noch besser wäre ein reproduzierbarer Codeausschnitt in einer Geige (Codepen, etc.). – tony19

Antwort

2

Ich denke, setTimeout ist nicht im Rahmen Ihres Elements definiert, sondern im globalen Bereich.

So müssen Sie clear Funktion in Lifecycle verwenden Funktion in Ihrem Element lösen bestehende Timeouts abzubrechen.

+1

Warum nehmen Sie an, dass 'setTimeout()' hier verwendet wird (vs Polymers 'async() ')? – tony19

+2

wegen dieses Satzes: "Innerhalb der Polymerelemente sind Timeout-Ereignisse", vielleicht habe ich die Frage falsch verstanden. –

+0

Es ist möglich, dass das OP die "timeout events" mit Polymers 'async()' anstelle von 'setTimeout()' implementiert (aber selbst wenn nicht, würde 'setTimeout' nicht definiert sein?). Ich denke, wir werden herausfinden, ob/wann die Frage aktualisiert wird, um den relevanten Code einzuschließen. :) – tony19

Verwandte Themen