Octothorpe / number-sign / hashmark memiliki arti khusus dalam URL, biasanya mengidentifikasi nama bagian dari dokumen. Istilah yang tepat adalah teks yang mengikuti hash adalah jangkar bagian dari URL. Jika Anda menggunakan Wikipedia, Anda akan melihat bahwa sebagian besar halaman memiliki daftar isi dan Anda dapat melompat ke bagian dalam dokumen dengan jangkar, seperti:
https://en.wikipedia.org/wiki/Alan_Turing#Early_computers_and_the_Turing_test
https://en.wikipedia.org/wiki/Alan_Turing
mengidentifikasi halaman dan Early_computers_and_the_Turing_test
jangkar. Alasan Facebook dan aplikasi lain yang digerakkan oleh Javascript (seperti Wood & Stones saya sendiri ) menggunakan jangkar adalah mereka ingin membuat halaman dapat di-bookmark (seperti yang disarankan oleh komentar pada jawaban itu) atau mendukung tombol kembali tanpa memuat ulang seluruh halaman dari server .
Untuk mendukung bookmark dan tombol kembali, Anda perlu mengubah URL. Namun, jika Anda mengubah bagian halaman (dengan sesuatu seperti window.location = 'http://raganwald.com';
) ke URL yang berbeda atau tanpa menentukan jangkar, browser akan memuat seluruh halaman dari URL. Coba ini di Firebug atau konsol Javascript Safari. Muat http://minimal-github.gilesb.com/raganwald
. Sekarang di konsol Javascript, ketik:
window.location = 'http://minimal-github.gilesb.com/raganwald';
Anda akan melihat refresh halaman dari server. Sekarang ketik:
window.location = 'http://minimal-github.gilesb.com/raganwald#try_this';
Aha! Tidak ada penyegaran halaman! Tipe:
window.location = 'http://minimal-github.gilesb.com/raganwald#and_this';
Masih tidak ada penyegaran. Gunakan tombol kembali untuk melihat bahwa URL ini ada dalam riwayat peramban. Peramban memperhatikan bahwa kami berada di halaman yang sama tetapi hanya mengubah jangkar, sehingga tidak memuat ulang. Berkat perilaku ini, kami dapat memiliki satu aplikasi Javascript yang tampaknya peramban berada di satu 'halaman' tetapi memiliki banyak bagian yang dapat di-bookmark yang menghormati tombol kembali. Aplikasi harus mengubah jangkar ketika pengguna memasukkan 'negara' yang berbeda, dan juga jika pengguna menggunakan tombol kembali atau bookmark atau tautan untuk memuat aplikasi dengan jangkar termasuk, aplikasi harus mengembalikan keadaan yang sesuai.
Jadi begitulah: Jangkar memberikan programmer Javascript dengan mekanisme untuk membuat aplikasi bookmarkable, indexable, dan ramah tombol kembali. Teknik ini memiliki nama: Ini adalah Single Page Interface .
ps Ada manfaat keempat untuk teknik ini: Memuat konten halaman melalui AJAX dan kemudian menyuntikkannya ke DOM saat ini bisa jauh lebih cepat daripada memuat halaman baru. Selain peningkatan kecepatan, trik lebih lanjut seperti memuat bagian-bagian tertentu di latar belakang dapat dilakukan di bawah kendali programmer.
pps Dengan semua itu, tanda 'letusan' atau tanda seru adalah petunjuk lebih lanjut untuk perayap web Google bahwa laman yang persis sama dapat dimuat dari server dengan URL yang sedikit berbeda. Lihat Ajax Crawling . Teknik lain adalah membuat setiap titik tautan ke URL yang dapat diakses server dan kemudian menggunakan Javascript yang tidak mencolok untuk mengubahnya menjadi SPI dengan jangkar.
Inilah tautan utama lagi: Manifes Antarmuka Halaman Tunggal
shebang
yang ... en.wikipedia.org/wiki/Shebang_%28Unix%29