Saya ingin membuat halaman header dan footer yang umum yang disertakan pada beberapa halaman html.
Saya ingin menggunakan javascript. Apakah ada cara untuk melakukan ini hanya menggunakan html dan JavaScript?
Saya ingin memuat halaman header dan footer dalam halaman html lain.
javascript
jquery
html
css
Prasanth AR
sumber
sumber
Jawaban:
Anda dapat melakukannya dengan jquery .
Tempatkan kode ini
index.html
dan letakkan kode ini di
header.html
danfooter.html
, di lokasi yang sama denganindex.html
Sekarang, ketika Anda mengunjungi
index.html
, Anda harus dapat mengklik tag tautan.sumber
local file
tidak berfungsi di versi baru Google Chrome atau IE, alasan: keamanan!.breathe(in)
dan.breathe(out)
sudah? Bahasa scripting apa pun benar-benar berlebihan di sini.Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
ketika saya berlari di chromeSaya menambahkan bagian umum sebagai header dan footer menggunakan Server Side Includes . Tidak perlu HTML dan JavaScript. Sebagai gantinya, server web secara otomatis menambahkan kode yang disertakan sebelum melakukan hal lain.
Cukup tambahkan baris berikut di mana Anda ingin memasukkan file Anda:
sumber
.shtml
,.stm
,.shtm
. Ia bekerja di Apache, LiteSpeed, nginx, lighttpd dan IIS..shtml
,.stm
dan.shtm
: Pada IIS, semua file yang diurai dapat berisi SSI, misalnya.aspx
. Jika bekerja dengan PHP, Anda harus menggunakan PHPinclude
atauvirtual
perintah sebagai gantinya untuk mencapai hasil yang sama.Haruskah Anda menggunakan struktur file html dengan JavaScript? Sudahkah Anda mempertimbangkan untuk menggunakan PHP sehingga Anda dapat menggunakan objek PHP include yang sederhana?
Jika Anda mengonversi nama file halaman .html Anda ke .php - lalu di bagian atas setiap halaman .php Anda, Anda dapat menggunakan satu baris kode untuk memasukkan konten dari header.php Anda
Lakukan hal yang sama di footer dari setiap halaman untuk memasukkan konten dari file footer.php Anda
Tidak diperlukan JavaScript / Jquery atau file tambahan tambahan.
NB Anda juga bisa mengonversi file .html Anda menjadi file .php menggunakan yang berikut ini di file .htaccess Anda
sumber
Saya mencoba ini: Buat file header.html suka
Sekarang sertakan header.html di halaman HTML Anda seperti:
Bekerja dengan sangat baik.
sumber
Anda juga bisa meletakkan: (load_essentials.js :)
sumber
Saya pikir, jawaban atas pertanyaan ini terlalu lama ... saat ini beberapa browser desktop dan seluler mendukung Template HTML untuk melakukan ini.
Saya telah membangun sedikit contoh:
Diuji OK di Chrome 61.0, Opera 48.0, Opera Neon 1.0, Browser Android 6.0, Chrome Mobile 61.0 dan Browser Adblocker 54.0
Diuji KO di Safari 10.1, Firefox 56.0, Edge 38.14 dan IE 11
Info kompatibilitas lebih lanjut di canisue.com
index.html
autoload-template.html
styles.css
Anda bisa mendapatkan lebih banyak contoh di pos HTML5 Rocks ini
sumber
Saya telah bekerja di C # / Razor dan karena saya tidak memiliki pengaturan IIS di laptop rumah saya, saya mencari solusi javascript untuk memuat pandangan sambil membuat markup statis untuk proyek kami.
Saya menemukan sebuah situs web yang menjelaskan metode "membuang jquery," itu menunjukkan metode di situs tersebut melakukan apa yang Anda inginkan dalam javascript Jane polos ( tautan referensi di bagian bawah posting). ). Pastikan untuk menyelidiki kerentanan keamanan dan masalah kompatibilitas jika Anda bermaksud menggunakannya dalam produksi. Saya tidak, jadi saya tidak pernah melihatnya sendiri.
Fungsi JS
Dapatkan kontennya
index.html
views / header.html
Sumbernya bukan milik saya, saya hanya merujuknya karena ini adalah solusi javascript vanilla yang bagus untuk OP. Kode asli ada di sini: http://gomakethings.com/ditching-jquery#get-html-from-another-page
sumber
Aloha dari 2018. Sayangnya, saya tidak punya sesuatu yang keren atau futuristik untuk dibagikan dengan Anda.
Namun saya ingin menunjukkan kepada mereka yang berkomentar bahwa
load()
metode jQuery tidak berfungsi saat ini mungkin mencoba menggunakan metode ini dengan file lokal tanpa menjalankan server web lokal. Melakukan hal ini akan membuang disebutkan di atas "asal salib" kesalahan, yang menentukan bahwa salib asal meminta seperti yang dibuat dengan metode beban hanya didukung untuk skema protokol sepertihttp
,data
, atauhttps
. (Saya berasumsi bahwa Anda tidak membuat permintaan lintas asal yang sebenarnya, yaitu file header.html sebenarnya berada di domain yang sama dengan halaman tempat Anda memintanya)Jadi, jika jawaban yang diterima di atas tidak berfungsi untuk Anda, pastikan Anda menjalankan server web. Cara tercepat dan termudah untuk melakukannya jika Anda terburu-buru (dan menggunakan Mac, yang memiliki Python pra-instal) adalah dengan memutar server http Python sederhana. Anda dapat melihat betapa mudahnya melakukannya di sini .
Saya harap ini membantu!
sumber
Dimungkinkan juga untuk memuat skrip dan tautan ke header. Saya akan menambahkannya salah satu contoh di atas ...
sumber
pendekatan lain yang tersedia sejak pertanyaan ini pertama kali ditanyakan adalah menggunakan reactrb-express (lihat http://reactrb.org ) Ini akan memungkinkan Anda skrip dalam ruby di sisi klien, mengganti kode html Anda dengan komponen reaksi yang ditulis dalam ruby.
sumber
Simpan HTML yang ingin Anda sertakan dalam file .html:
Content.html
Sertakan HTML
Termasuk HTML dilakukan dengan menggunakan atribut w3-include-html :
Contoh
Tambahkan JavaScript
Termasuk HTML dilakukan oleh JavaScript.
Sebut termasukHTML () di bagian bawah halaman:
Contoh
sumber