Bevor ich anfange, ist jQuery eine JavaScript-Bibliothek, die für die DOM-Manipulation verwendet wird. Sie sollten jQuery also nicht für eine Seitenumleitung verwenden.
Ein Zitat von Jquery.com:
Während jQuery in älteren Browserversionen möglicherweise ohne größere Probleme ausgeführt wird, testen wir jQuery in diesen nicht aktiv und beheben im Allgemeinen keine Fehler, die in ihnen auftreten können.
Es wurde hier gefunden:
https://jquery.com/browser-support/
JQuery ist also keine Komplettlösung für die Abwärtskompatibilität.
Die folgende Lösung mit rohem JavaScript funktioniert in allen Browsern und ist seit langem Standard, sodass Sie keine Bibliotheken für die browserübergreifende Unterstützung benötigen.
Diese Seite wird nach 3000 Millisekunden zu Google weitergeleitet
<!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>
Es gibt verschiedene Möglichkeiten:
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"
Wenn Sie "Ersetzen" verwenden, kehrt die Schaltfläche "Zurück" nicht zur Umleitungsseite zurück, als wäre sie nie im Verlauf enthalten. Wenn Sie möchten, dass der Benutzer zur Umleitungsseite zurückkehren kann, verwenden Sie window.location.href
oderwindow.location.assign
. Wenn Sie eine Option verwenden, mit der der Benutzer zur Umleitungsseite zurückkehren kann, denken Sie daran, dass Sie beim Aufrufen der Umleitungsseite zurückgeleitet werden. Berücksichtigen Sie dies, wenn Sie eine Option für Ihre Weiterleitung auswählen. Unter Bedingungen, bei denen die Seite nur umgeleitet wird, wenn der Benutzer eine Aktion ausführt, ist es in Ordnung, die Seite im Verlauf der Zurück-Schaltfläche zu haben. Wenn die Seite jedoch automatisch umgeleitet wird, sollten Sie Ersetzen verwenden, damit der Benutzer die Schaltfläche "Zurück" verwenden kann, ohne zu der Seite zurückgedrängt zu werden, die die Umleitung sendet.
Sie können auch Metadaten verwenden, um eine Seitenumleitung wie folgt auszuführen.
META aktualisieren
<meta http-equiv="refresh" content="0;url=http://evil.com/" />
META Standort
<meta http-equiv="location" content="URL=http://evil.com" />
BASE Hijacking
<base href="http://evil.com/" />
Auf dieser Seite finden Sie viele weitere Methoden, um Ihren ahnungslosen Client auf eine Seite umzuleiten, die er möglicherweise nicht besuchen möchte (keine davon ist auf jQuery angewiesen):
https://code.google.com/p/html5security/wiki/RedirectionMethods
Ich möchte auch darauf hinweisen, dass die Leute nicht zufällig umgeleitet werden möchten. Leiten Sie Personen nur dann weiter, wenn dies unbedingt erforderlich ist. Wenn Sie zufällig Personen umleiten, werden diese nie wieder auf Ihre Website gelangen.
Der nächste Absatz ist hypothetisch:
Möglicherweise werden Sie auch als schädliche Website gemeldet. In diesem Fall warnt der Benutzerbrowser die Benutzer, wenn sie auf einen Link zu Ihrer Website klicken, dass Ihre Website böswillig ist. Was auch passieren kann, ist, dass Suchmaschinen Ihre Bewertung möglicherweise verlieren, wenn Leute eine schlechte Erfahrung auf Ihrer Website melden.
Bitte lesen Sie die Google Webmaster-Richtlinien zu Weiterleitungen:
https://support.google.com/webmasters/answer/2721217?hl=de&ref_topic=6001971
Hier ist eine lustige kleine Seite, die dich aus der Seite wirft.
<!DOCTYPE html>
<html>
<head>
<title>Go Away</title>
</head>
<body>
<h1>Go Away</h1>
<script>
setTimeout(function(){
window.history.back();
}, 3000);
</script>
</body>
</html>
Wenn Sie die beiden Seitenbeispiele miteinander kombinieren, erhalten Sie eine kleine Umleitungsschleife, die garantiert, dass Ihr Benutzer Ihre Website nie wieder verwenden möchte.