replacechild insertbefore ejemplo javascript jquery

javascript - ejemplo - NotFoundError no detectado: no se pudo ejecutar ''insertBefore'' en ''Node'': el nodo antes de que se inserte el nuevo nodo no es un elemento secundario de este nodo



removechild (2)

Estoy teniendo un problema con Javascript. Estoy recibiendo este mensaje de error:

NotFoundError no detectado: no se pudo ejecutar ''insertBefore'' en ''Node'': el nodo antes de que se inserte el nuevo nodo no es un elemento secundario de este nodo.

Javascript:

var vidCounter = 0; vidCounter++; var originalDiv; var newVideo = document.createElement("video"); newVideo.setAttribute("name", vidCounter); newVideo.setAttribute("autoplay", "true"); originalDiv = document.getElementById("othersarea"); document.body.insertBefore(newVideo, originalDiv);

Se está tratando de agregar una etiqueta <video> debajo de un div llamado othersarea .

<div id="remoteVideos"> <div class="title"> <h2>Others</h2> </div> <div id="othersarea"> </div> </div>

¿Cómo puedo solucionar esto?

También quiero ejecutar attachMediaStream([VIDEO TAG HERE HOW?], event.stream); en mi nueva etiqueta de video.



insertBefore llamar a insertBefore en el elemento padre del elemento que está insertando anteriormente. document.body no es el padre, está muy arriba en la jerarquía DOM.

Y para insertar después de un DIV, tienes que insertar antes de su próximo hermano.

var parentDiv = document.getElementById("remoteVideos"); parentDiv.insertBefore(newVideo, originalDiv.nextSibling);

Vea los ejemplos en MDN