Quiero crear páginas comunes de encabezado y pie de página que se incluyen en varias páginas html.
Me gustaría usar javascript. ¿Hay alguna manera de hacer esto usando solo html y JavaScript?
Quiero cargar una página de encabezado y pie de página dentro de otra página html.
javascript
jquery
html
css
Prasanth AR
fuente
fuente
Respuestas:
Puedes lograr esto con jquery .
Coloque este código en
index.html
y poner este código en
header.html
yfooter.html
, en la misma ubicación queindex.html
Ahora, cuando visite
index.html
, debería poder hacer clic en las etiquetas de enlace.fuente
local file
no funciona en la nueva versión de Google Chrome o IE, razón: ¡seguridad!.breathe(in)
y.breathe(out)
ya? Cualquier lenguaje de script es puramente excesivo aquí.Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
cuando corro en ChromeAgrego partes comunes como encabezado y pie de página usando Server Side incluye . No se necesita HTML ni JavaScript. En cambio, el servidor web agrega automáticamente el código incluido antes de hacer cualquier otra cosa.
Simplemente agregue la siguiente línea donde desea incluir su archivo:
fuente
.shtml
,.stm
,.shtm
. Funciona en Apache, LiteSpeed, nginx, lighttpd e IIS..shtml
,.stm
y.shtm
: En IIS, todos los archivos analizados pueden contener SSI, por ejemplo.aspx
. Si trabaja con PHP, debe utilizar PHPinclude
o elvirtual
comando en su lugar para lograr el mismo resultado.¿Debe usar la estructura de archivos html con JavaScript? ¿Ha considerado usar PHP en su lugar para poder usar PHP simple objeto de inclusión?
Si convierte los nombres de archivo de sus páginas .html a .php, entonces en la parte superior de cada una de sus páginas .php puede usar una línea de código para incluir el contenido de su header.php
Haga lo mismo en el pie de página de cada página para incluir el contenido de su archivo footer.php
No se requiere JavaScript / Jquery ni archivos adicionales incluidos.
Nota: También puede convertir sus archivos .html a archivos .php usando lo siguiente en su archivo .htaccess
fuente
Intenté esto: crear un archivo header.html como
Ahora incluya header.html en sus páginas HTML como:
Funciona perfectamente bien.
fuente
También podría poner: (load_essentials.js :)
fuente
Creo que las respuestas a esta pregunta son demasiado antiguas ... actualmente, algunos navegadores de escritorio y móviles admiten plantillas HTML para hacerlo.
He construido un pequeño ejemplo:
Probado OK en Chrome 61.0, Opera 48.0, Opera Neon 1.0, Android Browser 6.0, Chrome Mobile 61.0 y Adblocker Browser 54.0
Probado KO en Safari 10.1, Firefox 56.0, Edge 38.14 e IE 11
Más información de compatibilidad en canisue.com
index.html
autoload-template.html
styles.css
Puedes obtener más ejemplos en esta publicación de HTML5 Rocks
fuente
He estado trabajando en C # / Razor y, dado que no tengo la configuración de IIS en la computadora portátil de mi casa, busqué una solución de JavaScript para cargar las vistas mientras creaba un marcado estático para nuestro proyecto.
Me topé con un sitio web que explica los métodos de "deshacerse de jquery", demuestra que un método en el sitio hace exactamente lo que buscas en javascript javascript ( enlace de referencia en la parte inferior de la publicación ). Asegúrese de investigar cualquier vulnerabilidad de seguridad y problemas de compatibilidad si tiene la intención de usar esto en producción. No lo soy, así que nunca lo miré yo mismo.
Función JS
Obtén el contenido
index.html
views / header.html
La fuente no es mía, solo estoy haciendo referencia a ella, ya que es una buena solución javascript de vainilla para el OP. El código original vive aquí: http://gomakethings.com/ditching-jquery#get-html-from-another-page
fuente
Aloha de 2018. Desafortunadamente, no tengo nada genial o futurista para compartir con ustedes.
Sin embargo, quería señalar a aquellos que han comentado que el
load()
método jQuery no está funcionando en el presente, probablemente estén tratando de usar el método con archivos locales sin ejecutar un servidor web local. Si lo hace, lanzar el anteriormente mencionado error "origen cruz", que especifica que el origen cruz solicita tal como la realizada por el método de carga solamente se admiten para esquemas de protocolo comohttp
,data
ohttps
. (Supongo que no está haciendo una solicitud de origen cruzado real, es decir, el archivo header.html está realmente en el mismo dominio que la página desde la que lo solicita)Entonces, si la respuesta aceptada arriba no funciona para usted, asegúrese de estar ejecutando un servidor web. La forma más rápida y sencilla de hacerlo si tienes prisa (y estás usando una Mac, que tiene Python preinstalado) sería activar un servidor http Python simple. Puedes ver lo fácil que es hacer eso aquí .
¡Espero que esto ayude!
fuente
También es posible cargar scripts y enlaces en el encabezado. Lo agregaré uno de los ejemplos anteriores ...
fuente
otro enfoque disponible desde que se hizo esta pregunta por primera vez es usar reactrb-express (consulte http://reactrb.org ) Esto le permitirá escribir en ruby en el lado del cliente, reemplazando su código html con componentes de reacción escritos en ruby.
fuente
Guarde el HTML que desea incluir en un archivo .html:
Content.html
Incluir el HTML
La inclusión de HTML se realiza mediante el uso de un atributo w3-include-html :
Ejemplo
Agrega el JavaScript
Las inclusiones HTML se realizan mediante JavaScript.
Llame a includeHTML () al final de la página:
Ejemplo
fuente