index.html soll andere html datei öffnen?

4 Antworten

und zwar soll iwas.html vor index geöffnet werden und wenn man dann auch einen button drückt soll er wieder auf index gehen

Erstelle eine Datei namens .htaccess mit folgendem Inhalt:

DirectoryIndex iwas.html index.html

diese speicherst Du ins oberste Verzeichnis. Dann erstellst Du die Datei iwas.html mit folgendem Inhalt:

<!doctype html>
<title>go to index.html</title>
<form action="index.html">
<button>Gehe zu index.html</button>
</form>

Alex

Die Problematik liegt hier eigentlich nur in Folgendem:

Angenommen, man richtet nun eine Weiterleitung ein (und die kann ja auf verschiedenen Wegen erfolgen: Über die Serverkonfiguration, über die Webanwendung im Backend, über einen meta-refresh-Tag im Markup, über ein Skript, ...), muss verhindert werden, dass diese erneut wirkt, wenn man auf den Button klickt.

Das Setzen eines Cookies wäre eine mögliche Lösung.

Beispiel mit JavaScript:

index.html

<!doctype html>
<title>Index</title>
<script>
  // include getCookie from https://www.w3schools.com/js/js_cookies.asp ...

  if (!getCookie("iwashere")) {
    location.href = "url to iwas.html";
  }
</script>

iwas.html

<!doctype html>
<title>Iwas</title>
<a href="url-to-index.html">To index.html</a>
<script>
  // include setCookie from https://www.w3schools.com/js/js_cookies.asp ...
  
  setCookie("iwashere", 1, 365); // valid for 365 days
</script>

Wenn iwas.html wirklich immer zuerst eingeblendet werden soll, setze die Zeit herunter, die der Cookie gültig ist. Vielleicht auf eine Minute oder weniger. Die setCookie-Funktion müsstest du dafür ein wenig anpassen.

Noch eine andere einfache Lösung wäre es, sich statt an einem Cookie, an der URL zu orientieren. Du kannst ihr einen Parameter mitgeben, welcher bestimmt, ob es eine Weiterleitung geben soll oder nicht.

Beispiel mit JavaScript:

<!doctype html>
<title>Index</title>
<script>
  // get url param "stay" and store value in "stay" ...

  if (!stay) {
    location.href = "url to iwas.html";
  }
</script>

Zum Herausfiltern eines URL-Parameters lies hier.

Eine URL, die weiterleitet, könnte so aussehen:

Auf iwas.html würde der Link so aussehen:

<a href="url-to-index.html?stay=1">To index.html</a>

Um den Link wie einen Button aussehen zu lassen, kannst du ihn mit CSS stylen.

wieso nimmst du die iwie.html nichts als index.

Ansonsten wenn du das anders machen möchtest musst du php nutzen und dann mit cookies und einer einfachen Abfrage machen

Die Button Weiterleitung kannst du am leichtesten mitt einem <form> machen:
<form class="" action="index.html" method="post">
<input type="submit">
</form>

Entweder musst du deinen Server so konfigurieren, dass er eben iwas.html zuerst öffnet, oder du tust eben den Inhalt von iwas und index vertauschen und der Button führt dann zu iwas, wo jetzt eben der Inhalt von Index drin ist.

Woher ich das weiß:Berufserfahrung – Tätigkeit als Webentwickler in einer Digitalagentur