Kann man einen "Button" für das schließen eines Browser Tab in einer Webseiten einbauen?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ja, das ist möglich. Die zugehörige JavaScript-Methode des window-Objekts heißt close. In diesem Beispiel wird sie durch einen Link umgesetzt:

<a href="javascript:window.close();return false" title="Close window">Close window</a> 

Entweder du gibst diesem Link einen entsprechenden Style via CSS, sodass er wie ein Button aussieht oder du nutzt direkt das button-Element mit einem onclick-Handler.

Zu beachten ist, dass das Verhalten der close-Methode je Browser variiert. Mozilla Firefox bspw. erlaubt das Schließen des Fensters via JavaScript nur, wenn es zuvor auch von der Webseite selbst geöffnet wurde. Im Internet Explorer hingegen erscheint ein Bestätigungsdialog.

Unter dem Begriff Fenster fallen in dieser Hinsicht übrigens auch Tabs.

Generell frage ich mich aber, wozu so ein Button überhaupt noch notwendig ist. Dem Nutzer steht doch bereits der Button im Fensterkopf zur Verfügung. Allenfalls kannst du mit einem Satz ja auch darauf hinweisen, dass das Fenster / der Tab nun geschlossen werden kann. Das sollte auch für den DAU als Information (relativ zu deiner Webseite) ausreichend sein.

Hallo,

die Lösung (window.close) wurde ja erwähnt.

Diese funktioniert aber nur mit aktiviertem JavaScript und je nachdem, welcher Browser genutzt wird und wie dieser eingestellt ist, kann noch eine Warnung erfolgen, dass die Website das Fenster schließen möchte, die wiederum bestätiget werden muss.

Das ist also keine ganz saubere Lösung. Ich würde es dem Benutzer selbst überlassen mit dem Hinweis: "Sie können das Fenster nun schließen" oder ihn direkt zum Login oder anderen interessanten Informationen der Website führen...

Kannst Du bspw. mit

<a href="javascript:close_window();">Fenster schliessen</a>
regex9  07.06.2017, 03:06

Es gibt keine JavaScript-Funktion close_window. Die muss erst implementiert werden.

1

Man kann Popups per button schließen, aber den Normalen gab glaube ich nicht