¿Qué JavaScript eliminará todas las etiquetas de imagen?Eliminar todas las imágenes
Respuesta
UPD: lo siento, esto es una respuesta incorrecta, ver los comentarios. This es una respuesta correcta.
Algo como esto:
images = document.getElementsByTagName('img');
for (i = 0; i < images.length; i++) {
images[i].parentNode.removeChild(images[i]);
}
O una ligera modificación de mi primer intento de responder a esta pregunta: ¿
var images = document.getElementsByTagName('img');
var l = images.length;
for (var i = 0; i < l; i++) {
images[0].parentNode.removeChild(images[0]);
}
Con jQuery:
$("img").remove();
¿Tengo que incluir toda la biblioteca para una tarea sencilla? – steven
+1 jQuery ... no hay necesidad de reinventar la rueda. :-) – beggs
@beggs: No estoy de acuerdo. Dar una respuesta de JQuery cuando no hay indicios de que el marco de JQuery esté en uso, es como dar una respuesta basada en .NET a la pregunta de C++. Si lo está usando bien y está bien como un comentario que puede ser considerado, pero no es una respuesta a una pregunta que no es de Jquery. La respuesta n1313 es difícilmente científica y agregar un marco grande .js a tu página para que no "reinventes la rueda" simplemente no tenga sentido. – AnthonyWJones
Sin usar bibliotecas externas:
var images = document.getElementsByTagName('img');
for(var i=0; i < images.length; i++) {
images[i].parentNode.removeChild(images[i]);
}
O usando jQuery:
$('img').remove();
Fui ninja'd;) – Keeper
La respuesta anterior sólo eliminará cada segundo de imagen.
Recuerde NodeLists devuelto por getElementsByTagName u otros métodos DOM están 'en vivo'. Eso significa que cuando elimina la imagen 0, las imágenes 1-n se mueven hacia abajo a 0- (n-1); esta es una 'iteración destructiva'.
Para evitar esto, o bien hacer una copia de matriz estática de la NodeList (como la respuesta jQuery está haciendo con eficacia), o, más rápido, simplemente iterar la lista revés:
for (var i= document.images.length; i-->0;)
document.images[i].parentNode.removeChild(document.images[i]);
Una respuesta que funciona, esperemos que steven actualice la respuesta aceptada para reflejar esto. –
Esto debería funcionar también:
var images = document.getElementsByTagName('img');
while(images.length > 0) {
images[0].parentNode.removeChild(images[0]);
}
Sí, este es un buen enfoque para la iteración destructiva, cuando sabes que vas a eliminar * cada * elemento. – bobince
Esta es la mejor respuesta, ya que la sintaxis while combinada con Live NodeList es más clara. – eyelidlessness
- 1. Borrar todas las imágenes agregadas al lienzo
- 2. eliminar todas las variables, excepto las funciones
- 3. Android listar todas las imágenes disponibles
- 4. jQuery se desvanecen todas las demás imágenes
- 5. Obtener todas las imágenes url de cadena
- 6. Eliminar todas las entidades en Entity Framework
- 7. ¿Cómo eliminar todas las columnas de JTable?
- 8. Eliminar todas las vistas desde SQL Server
- 9. Eliminar todas las instancias de CKEditor
- 10. UIButton eliminar todas las acciones de destino
- 11. eliminar todas las subcapas de una visión
- 12. Eliminar todas las ocurrencias, excepto la última?
- 13. Java: Eliminar todas las filas de DefaultTableModel
- 14. Eliminar todas las reglas de CSS
- 15. ¿Cómo eliminar todas las cookies de UIWebView?
- 16. Backbone.js - Eliminar todas las vistas secundarias
- 17. ¿Cómo eliminar todas las relaciones de manytomany?
- 18. Eliminar filas duplicadas (no eliminar todas las duplicadas)
- 19. Eliminar imágenes de una carpeta
- 20. ¿Cómo eliminar las distorsiones radiales de las imágenes usando OpenCV?
- 21. ¿Todas las imágenes de la tienda son las imágenes base, pequeñas y en miniatura de Magento?
- 22. Jquery seleccione todas las imágenes excepto aquellas con cierta clase
- 23. ¿Cómo se ocultan todas las imágenes con javascript?
- 24. ¿Deberían definirse todas las imágenes de presentación en CSS?
- 25. Ajustar todas las imágenes con un div usando DOMDocument
- 26. Devolución de todas las imágenes en una página de Wikipedia
- 27. listado todas las imágenes en un directorio usando PHP
- 28. mostrar todas las imágenes sólo después de su carga completa
- 29. Javascript - ejecutar después de que todas las imágenes han cargado
- 30. Lista de todas las imágenes de fondo en DOM
Mejora recomendada: use 'var' para declarar correctamente 'imágenes' e 'i'. – bobbymcr
Esto no funciona; consulte la explicación a continuación. – bobince
Como bobince señala, esta respuesta no tiene en cuenta el hecho de que la NodeList devuelta por getElementsByTagName está activa .. – NickFitz