El Atributo DATA

El atributo data especifica la URL del recurso a incrustar en una etiqueta object.
La etiqueta <object> en HTML permite incrustar recursos externos (como PDFs, imágenes, videos o incluso aplicaciones) en una página web. El atributo data especifica la URL del recurso a incrustar. Aquí un tutorial detallado para dominar su uso:
Sintaxis Básica
El atributo data define la ruta del recurso, mientras que type indica el tipo MIME del contenido.
<object data="ruta/al/recurso.extensión" type="tipo-MIME" width="ancho" height="alto" > <!-- Contenido alternativo si el recurso no se carga --> </object>
Ejemplos Prácticos
Ejemplo 1: Incrustar un PDF
<object data="documento.pdf" type="application/pdf" width="800" height="600" > <p>Tu navegador no soporta PDFs. Descarga el <a href="documento.pdf">documento aquí</a>.</p> </object>
Ejemplo 2: Incrustar una Imagen SVG
<object data="grafico.svg" type="image/svg+xml" width="400" height="300" ></object>
Ejemplo 3: Incrustar un Video (como alternativa a <video>)
<object
data="video.mp4"
type="video/mp4"
width="640"
height="360"
>
<video controls>
<source src="video.mp4" type="video/mp4">
Tu navegador no soporta el elemento de video.
</video>
</object>
Atributos Clave
-
data: Obligatorio. URL del recurso a incrustar. -
type: Recomendado. Tipo MIME del recurso (ej:application/pdf,image/png). Ayuda al navegador a prepararse para el contenido. -
widthyheight: Definen las dimensiones del área del objeto. -
name: Útil para referenciar el objeto en JavaScript.
Contenido Alternativo
El contenido dentro de <object> se muestra si el recurso no puede cargarse, ideal para accesibilidad y compatibilidad:
<object data="app.swf" type="application/x-shockwave-flash"> <img src="fallback.png" alt="Imagen de respaldo"> <p>Este contenido requiere Adobe Flash Player.</p> </object>
Interacción con JavaScript
Puedes acceder al objeto mediante su id o name para controlarlo dinámicamente:
<object
data="widget.html"
type="text/html"
id="miWidget"
width="300"
height="200"
></object>
<script>
const widget = document.getElementById('miWidget');
// Cambiar el recurso en tiempo de ejecución
widget.data = 'nuevo-widget.html';
</script>
Compatibilidad con Tipos MIME
| Tipo de Archivo | Tipo MIME |
|---|---|
application/pdf |
|
| SVG | image/svg+xml |
| HTML | text/html |
| Flash (SWF) | application/x-shockwave-flash |
| Video MP4 | video/mp4 |
Ventajas y Limitaciones
Ventajas:
-
Soporta múltiples formatos.
-
Permite contenido interactivo (ej: applets Java, Flash).
-
Mejor accesibilidad gracias al contenido alternativo.
Limitaciones:
-
Flash y Java están obsoletos en navegadores modernos.
-
Algunos recursos requieren plugins (ej: PDF viewer integrado).
-
Menos utilizado que alternativas como
<iframe>,<video>o<img>.
Alternativas
-
<embed>: Similar, pero sin contenido alternativo (no recomendado). -
<iframe>: Ideal para incrustar páginas web completas. -
<video>/<audio>: Específicos para multimedia.
Buenas Prácticas
-
Usa
typesiempre: Ayuda al navegador a optimizar la carga. -
Incluye contenido alternativo: Para accesibilidad y navegadores antiguos.
-
Evita tecnologías obsoletas: Como Flash o Java applets.
-
Prueba en múltiples navegadores: Algunos (como Safari) tienen restricciones con ciertos MIME types.
Conclusión:
La etiqueta <object> con el atributo data es una herramienta versátil para incrustar recursos externos, pero su uso debe adaptarse a formatos modernos y asegurar siempre la compatibilidad. ¡Perfecta para integrar PDFs, SVG o contenido HTML interactivo!