Foros del Web » Programando para Internet » Javascript »

agregar elementos dom con javascript

Estas en el tema de agregar elementos dom con javascript en el foro de Javascript en Foros del Web. aparte de hacer una guarrada semejante Código: $("#movie_list").append( "<li class='movie_cover'>"+ "<div class='cover'>"+ "<div class='over'>"+ "<div class='question'>"+ "<img onclick='show_trailer(\""+link+"\")' src='http://www.iconsdb.com/icons/preview/white/info-5-xxl.png'>"+ "</div>"+ "<div class='play'>"+ "<img onclick='play_movie(\""+link+"\")' src='http://www.iconsdb.com/icons/preview/white/video-play-xxl.png'>"+ ...
  #1 (permalink)  
Antiguo 20/09/2017, 13:05
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 13 años, 11 meses
Puntos: 66
agregar elementos dom con javascript

aparte de hacer una guarrada semejante
Código:
			$("#movie_list").append(
				"<li class='movie_cover'>"+
					"<div class='cover'>"+
						"<div class='over'>"+
							"<div class='question'>"+
								"<img onclick='show_trailer(\""+link+"\")' src='http://www.iconsdb.com/icons/preview/white/info-5-xxl.png'>"+
							"</div>"+
						"<div class='play'>"+
							"<img  onclick='play_movie(\""+link+"\")' src='http://www.iconsdb.com/icons/preview/white/video-play-xxl.png'>"+
						"</div>"+
					"</div>"+
				"<img width='100%' src='"+image+"'/>"+
				"</div><div class='title'>"+title+"</div></li>");
o crear los elementos metiendo mano al dom

¿hay alguna solución un poquito mas elegante sin llegar recurrir a templates?
  #2 (permalink)  
Antiguo 20/09/2017, 17:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: agregar elementos dom con javascript

Hola:

Con javascript se usa appendChild o insertBefore... e innerHTML.

Lo que usas depende de alguna librería.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 22/09/2017, 07:07
 
Fecha de Ingreso: noviembre-2015
Mensajes: 231
Antigüedad: 8 años, 5 meses
Puntos: 86
Respuesta: agregar elementos dom con javascript

insert* y innerHTML están bastante desactualizados. Se recomienda usar insertAdjacent*
  #4 (permalink)  
Antiguo 25/09/2017, 11:49
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 10 meses
Puntos: 834
Respuesta: agregar elementos dom con javascript

Cita:
Iniciado por mpozo Ver Mensaje
insert* y innerHTML están bastante desactualizados. Se recomienda usar insertAdjacent*
¿Estás recomendando un método con status WD (Working Draft)?
  #5 (permalink)  
Antiguo 25/09/2017, 15:29
 
Fecha de Ingreso: noviembre-2015
Mensajes: 231
Antigüedad: 8 años, 5 meses
Puntos: 86
Respuesta: agregar elementos dom con javascript

Entiendo que estés confuso. El vinculo redirecciona a insertAdjacentHTML() pero insertAdjacetElement() es LS al igual que insetAdjacentText(). Recomiendo insertAdjacentHTML(), aún estando con ese estado, por que las ventajas contra innerHTML son más que evidentes. Que hoy en día tenga ese estado no implica nada positivo ni negativo.
  #6 (permalink)  
Antiguo 26/09/2017, 11:48
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: agregar elementos dom con javascript

Cuáles son las ventajas evidentes?

https://jsperf.com/insertadjacenthtml-perf/3
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 26/09/2017, 14:52
 
Fecha de Ingreso: noviembre-2015
Mensajes: 231
Antigüedad: 8 años, 5 meses
Puntos: 86
Respuesta: agregar elementos dom con javascript

Puede que estén equivocados
https://developer.mozilla.org/es/doc...rtAdjacentHTML
Cita:
insertAdjacentHTML() analiza la cadena de texto introducida como cadena HTML o XML e inserta al árbol DOM los nodos resultantes de dicho análisis en la posición especificada. Este método no re-analiza el elemento sobre el cual se está invocando y por lo tanto no corrompe los elementos ya existentes dentro de dicho elemento. Esto evita el paso adicional de la serialización, haciendolo mucho más rápido que la manipulación directa innerHTML.
https://hacks.mozilla.org/2011/11/in...pet-injection/
https://davidwalsh.name/insertadjacenthtml-beforeend

Etiquetas: dom, elementos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:14.