Sebelum saya mulai, jQuery adalah pustaka JavaScript yang digunakan untuk manipulasi DOM. Jadi Anda tidak boleh menggunakan jQuery untuk pengalihan halaman.
Kutipan dari Jquery.com:
Sementara jQuery mungkin berjalan tanpa masalah besar di versi browser yang lebih lama, kami tidak secara aktif menguji jQuery di dalamnya dan umumnya tidak memperbaiki bug yang mungkin muncul di dalamnya.
Itu ditemukan di sini:
https://jquery.com/browser-support/
Jadi jQuery bukanlah solusi akhir-semua dan semua-untuk kompatibilitas mundur.
Solusi berikut ini menggunakan JavaScript baku berfungsi di semua browser dan telah standar untuk waktu yang lama sehingga Anda tidak memerlukan pustaka untuk dukungan lintas browser.
Halaman ini akan dialihkan ke Google setelah 3000 milidetik
<!DOCTYPE html>
<html>
<head>
<title>example</title>
</head>
<body>
<p>You will be redirected to google shortly.</p>
<script>
setTimeout(function(){
window.location.href="http://www.google.com"; // The URL that will be redirected too.
}, 3000); // The bigger the number the longer the delay.
</script>
</body>
</html>
Pilihan yang berbeda adalah sebagai berikut:
window.location.href="url"; // Simulates normal navigation to a new page
window.location.replace("url"); // Removes current URL from history and replaces it with a new URL
window.location.assign("url"); // Adds new URL to the history stack and redirects to the new URL
window.history.back(); // Simulates a back button click
window.history.go(-1); // Simulates a back button click
window.history.back(-1); // Simulates a back button click
window.navigate("page.html"); // Same as window.location="url"
Saat menggunakan ganti, tombol kembali tidak akan kembali ke halaman pengalihan, seolah-olah itu tidak pernah ada dalam sejarah. Jika Anda ingin pengguna dapat kembali ke halaman pengalihan kemudian gunakan window.location.href
atau window.location.assign
. Jika Anda menggunakan opsi yang memungkinkan pengguna kembali ke halaman pengalihan, ingatlah bahwa ketika Anda memasuki halaman pengalihan, itu akan mengarahkan Anda kembali. Jadi, pertimbangkan hal itu saat memilih opsi untuk pengalihan Anda. Dalam kondisi di mana halaman hanya dialihkan ketika tindakan dilakukan oleh pengguna maka memiliki halaman dalam sejarah tombol kembali akan baik-baik saja. Tetapi jika halaman auto redirect maka Anda harus menggunakan ganti sehingga pengguna dapat menggunakan tombol kembali tanpa dipaksa kembali ke halaman yang dikirimkan redirect.
Anda juga dapat menggunakan meta data untuk menjalankan redirect halaman seperti yang diikuti.
META Segarkan
<meta http-equiv="refresh" content="0;url=http://evil.com/" />
Lokasi META
<meta http-equiv="location" content="URL=http://evil.com" />
BASE Hijacking
<base href="http://evil.com/" />
Banyak lagi metode untuk mengarahkan klien Anda yang tidak menaruh curiga ke halaman yang mungkin tidak mereka inginkan dapat ditemukan di halaman ini (tidak satu pun dari mereka yang bergantung pada jQuery):
https://code.google.com/p/html5security/wiki/RedirectionMethods
Saya juga ingin menunjukkan, orang tidak suka diarahkan secara acak. Hanya mengarahkan orang ketika benar-benar dibutuhkan. Jika Anda mulai mengarahkan ulang orang secara acak, mereka tidak akan pernah mengunjungi situs Anda lagi.
Paragraf berikutnya adalah hipotetis:
Anda juga dapat dilaporkan sebagai situs jahat. Jika itu terjadi maka ketika orang mengklik tautan ke situs Anda, browser pengguna dapat memperingatkan mereka bahwa situs Anda berbahaya. Apa yang mungkin juga terjadi adalah mesin pencari dapat mulai menurunkan peringkat Anda jika orang melaporkan pengalaman buruk di situs Anda.
Harap tinjau Pedoman Webmaster Google tentang pengalihan:
https://support.google.com/webmasters/answer/2721217?hl=id&ref_topic=6001971
Ini adalah halaman kecil yang menyenangkan yang menendang Anda keluar dari halaman.
<!DOCTYPE html>
<html>
<head>
<title>Go Away</title>
</head>
<body>
<h1>Go Away</h1>
<script>
setTimeout(function(){
window.history.back();
}, 3000);
</script>
</body>
</html>
Jika Anda menggabungkan dua contoh halaman bersama-sama, Anda akan memiliki lingkaran pengalihan rute bayi yang akan menjamin bahwa pengguna Anda tidak akan pernah ingin menggunakan situs Anda lagi.