API Sejarah HTML5 membolehkan memanipulasi sejarah penyemak imbas dan menukar URL tanpa memuatkan semula halaman. Ia sesuai untuk aplikasi halaman tunggal (SPA) untuk melaksanakan fungsi navigasi dan penanda buku apabila bertukar kandungan dinamik. 1. Gunakan sejarah.pushstate () untuk menambah penyertaan baru ke timbunan sejarah. Parameter termasuk objek status, tajuk (biasanya diabaikan) dan URL baru, seperti sejarah.pushstate ({halaman: 'home'}, '', '/home'); 2. Jika anda perlu mengemas kini entri sejarah semasa dan bukannya menambahkannya, gunakan sejarah.replaceState (), yang sama dengan pushstate; 3. Apabila pengguna mengklik butang ke hadapan/belakang, logik navigasi boleh dikendalikan dengan mendengar acara Window.onpopstate, dan Event.State mengandungi data status yang diluluskan sebelumnya. API ini sering digunakan untuk membina laman web atau spa yang dimuatkan secara asynchronously, URL mencerminkan status aplikasi dan sokongan tingkah laku navigasi yang diharapkan. Ia sering digunakan bersempena dengan perpustakaan penghalaan depan seperti Router React, tetapi logik pemuatan kandungan selepas perubahan URL diperlukan.
Menggunakan API Sejarah HTML5 membolehkan anda memanipulasi sejarah penyemak imbas dan menukar URL tanpa memuat semula halaman. Ini amat berguna untuk aplikasi satu halaman (SPA) di mana kandungan berubah secara dinamik tetapi anda masih mahu navigasi URL yang betul dan penanda buku.

Tolak Negeri Baru ke Sejarah
Kaedah yang paling biasa digunakan ialah history.pushState()
. Ia membolehkan anda menambah entri baru ke timbunan sejarah sesi penyemak imbas.
- Parameter :
pushState(state, title, url)
-
state
: Objek yang berkaitan dengan entri sejarah baru (boleh menjadinull
) -
title
: Secara sejarah dimaksudkan untuk tajuk dokumen, tetapi kebanyakan pelayar mengabaikan ini -
url
: URL baru muncul di bar alamat (relatif atau mutlak)
-
Contoh:

history.pushstate ({page: 'home'}, '', '/home');
Selepas menjalankan ini, URL berubah ke /home
, tetapi halaman tidak dimuat semula. Anda boleh menggunakannya untuk mensimulasikan navigasi di SPA.
Ganti keadaan semasa
Jika anda tidak mahu membuat entri sejarah baru tetapi sebaliknya mengemas kini yang terkini, gunakan history.replaceState()
.

Ia berfungsi seperti pushState()
, tetapi menggantikan entri sejarah semasa dan bukannya menambah yang baru.
Ini berguna apabila anda ingin mengemas kini URL selepas beberapa interaksi pengguna tanpa membuat langkah tambahan/ke hadapan.
Contoh:
history.ReplaceState ({page: 'profile'}, '', '/user/profile');
Ini menyimpan pengguna pada halaman logik yang sama tetapi mengemas kini URL dan keadaan.
Menjawab Navigasi Back/Forward
Apabila pengguna mengklik butang belakang atau ke hadapan, aplikasi anda harus bertindak balas dengan sewajarnya. Di sinilah acara popstate
masuk.
- Lampirkan pendengar ke
window.onpopstate
:window.addeventListener ('popstate', fungsi (event) { // Mengendalikan navigasi di sini berdasarkan event.state });
Ambil perhatian bahawa
event.state
mengandungi objek Negeri yang anda lulus kepushState()
ataureplaceState()
.Perlu diingat bahawa tidak semua penyemak imbas membakar
popstate
pada beban halaman awal, jadi anda mungkin perlu menyemakhistory.state
secara berasingan.Bila Menggunakannya
Anda biasanya akan mencapai API Sejarah ketika membina laman web atau spa yang dinamik di mana:
- Beban kandungan tanpa menyegarkan halaman penuh
- URL perlu mencerminkan keadaan aplikasi semasa
- Pengguna mengharapkan butang Back/Forward berfungsi seperti yang diharapkan
Ia berpasangan dengan perpustakaan penghalaan sisi pelanggan seperti Router React atau Vue Router, yang secara dalaman menggunakan API ini.
Tetapi ingat: Menukar URL tidak akan secara automatik mengambil kandungan baru - bahagian itu terpulang kepada anda untuk dilaksanakan.
Pada dasarnya itu sahaja.
Atas ialah kandungan terperinci Bagaimana cara menggunakan API Sejarah HTML5?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Htm html5isbetTorcontrolandcustomizizationationy ,y, wyualyyyoutubeisbetterforeaseandperformance.1) html5allowsfortorStoreDusexperienceButrequireSManagingCodecSandcompatibility.2) youtubeofsssimplyVeBedwiPhileMsHiMsMarmanceMsHiMsHiMShipMarmanceShipeterPeterfambambangkangkangkangkangkangkik

Cara untuk menambah fungsi seret dan drop ke laman web adalah menggunakan API Draganddrop HTML5, yang disokong secara asli tanpa perpustakaan tambahan. Langkah -langkah khusus adalah seperti berikut: 1. Tetapkan elemen draggable = "benar" untuk membolehkan seretan; 2. Dengarkan Dragstart, Dragover, Drop dan Dragend peristiwa; 3. Tetapkan data dalam Dragstart, menghalang tingkah laku lalai dalam Dragover, dan mengendalikan logik dalam penurunan. Di samping itu, pergerakan elemen dapat dicapai melalui appendchild dan muat naik fail dapat dicapai melalui e.datatransfer.files. Nota: PencegahanDefault mesti dipanggil

Ya, youderrecordaudioandvideo.here'Show: 1) foreAudio, useasoundcheckscripttofindthhequietestspotandtestlevels.2) forvideo, useopencvtomonitorbrightnessandlusting.3)

Gunakan dan elemen untuk menambah audio dan video ke HTML. 1) Gunakan elemen untuk membenamkan audio, pastikan anda memasukkan atribut kawalan dan teks alternatif. 2) Gunakan elemen untuk membenamkan video, menetapkan atribut lebar dan ketinggian, dan menyediakan pelbagai sumber video untuk memastikan keserasian. 3) Tambah sari kata untuk meningkatkan kebolehcapaian. 4) Mengoptimumkan prestasi melalui streaming kadar bit adaptif dan pemuatan tertunda. 5) Elakkan main balik automatik melainkan disenyapkan, memastikan kawalan pengguna dan antara muka yang jelas.

AnimatingsvgwithcssispossibleusingkeyframesforbasicicanimationsandTransisiSforinterActiveFt.1.use@keyframestodefineAnimationStageFropertiesLikescale, Opacity, andColor.2.AplyTheAnimationTosvgelements.

InputType = "Range" digunakan untuk membuat kawalan slider, yang membolehkan pengguna memilih nilai dari julat yang telah ditetapkan. 1. Ia terutamanya sesuai untuk adegan di mana nilai perlu dipilih secara intuitif, seperti melaraskan jumlah, kecerahan atau sistem pemarkahan; 2. Struktur Asas termasuk Atribut Min, Max dan Langkah, yang menetapkan nilai minimum, nilai maksimum dan saiz langkah masing -masing; 3. Nilai ini boleh diperoleh dan digunakan dalam masa nyata melalui JavaScript untuk meningkatkan pengalaman interaktif; 4. Adalah disyorkan untuk memaparkan nilai semasa dan memberi perhatian kepada kebolehcapaian dan masalah keserasian pelayar apabila menggunakannya.

Elemen audio dan video dalam HTML dapat meningkatkan dinamik dan pengalaman pengguna laman web. 1. Menanam fail audio menggunakan unsur -unsur dan merealisasikan main balik automatik dan gelung muzik latar belakang melalui sifat autoplay dan gelung. 2. Gunakan elemen untuk membenamkan fail video, tetapkan lebar dan ketinggian dan kawalan sifat, dan menyediakan pelbagai format untuk memastikan keserasian penyemak imbas.

WebRTC adalah teknologi sumber terbuka percuma yang menyokong komunikasi masa nyata antara pelayar dan peranti. Ia menyedari penangkapan audio dan video, pengekodan dan penghantaran point-to-point melalui API terbina dalam, tanpa pemalam. Prinsip kerjanya termasuk: 1. Pelayar menangkap input audio dan video; 2. Data dikodkan dan dihantar terus ke pelayar lain melalui protokol keselamatan; 3. Pelayan isyarat membantu dalam sambungan awal tetapi tidak mengambil bahagian dalam penghantaran media; 4. Sambungan ditubuhkan untuk mencapai komunikasi langsung latensi rendah. Senario aplikasi utama adalah: 1. Persidangan video (seperti Googlemeet, Jitsi); 2. Perkhidmatan pelanggan/sembang video; 3. Permainan dalam talian dan aplikasi kerjasama; 4. IoT dan pemantauan masa nyata. Kelebihannya adalah keserasian silang platform, tidak diperlukan muat turun, penyulitan lalai dan latensi rendah, sesuai untuk komunikasi titik ke titik
