Frage

Ich habe ein div, die von einem Ort zum anderen in der DOM bewegt werden muss. Also im Moment mache ich es wie folgt:

flex.utils.get('oPopup_About').appendChild(flex.utils.get('oUpdater_About'));

Aber, IE, sein, gut, IE, funktioniert es nicht. Es funktioniert alle anderen Browser, nur nicht im Internet Explorer.

Ich brauche es auf diese Art und Weise wie das Element zu tun (div) ‚oUpdater_About‘ muss wiederverwendet werden, da es bevölkert über und über.

Also ich nur in der Lage sein müssen, um die div um das DOM zu bewegen, wird appendChild dies in allen Browsern passieren zu lassen, aber, IE.

Vielen Dank im Voraus!

War es hilfreich?

Lösung

Sie haben die Knoten zuerst zu entfernen, bevor Sie es anderswo anhängen können. Ein Knoten kann nicht zur gleichen Zeit an zwei Orten gleichzeitig sein.

var node = flex.utils.get('oUpdater_About')
node.parentNode.removeChild(node);
flex.utils.get('oPopup_About').appendChild(node);

Andere Tipps

stellen Sie sicher, die oUpdater_About (mit node.cloneNode (true)) zu klonen Auf diese Weise können Sie eine Kopie erhalten und wie oft die dom-Schnipsel wieder verwenden können, wie Sie (in jedem Browser)

wollen

Dieser Beitrag deutet darauf hin, dass es in der Tat ein Problem mit appendChild in Bezug auf diese:

http://metadeveloper.blogspot.com/2007 /01/ie-7-appendchild-bug.html

Haben Sie versucht, das Klonen es, es zu entfernen, dann den Klon Einfügen statt?

James

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top