2011-02-10 5 views
3

Existe-t-il un moyen de fermer simplement une fenêtre de navigateur, garanti? La dernière fois que j'ai entendu, appeler window.close() ou self.close() ne fonctionne que lorsque la fenêtre en cours est lancée à partir d'une autre fenêtre. Y at-il un moyen d'obtenir la majorité des navigateurs pour fermer la fenêtre actuelle lorsque ce n'est pas le cas?Façon unifiée de fermer une fenêtre de navigateur en JavaScript?

+0

Pourquoi voudriez-vous faire cela? –

+0

Les utilisateurs finissent de répondre à l'enquête, ils ne veulent plus ou n'ont plus besoin de la fenêtre, leur offrent un moyen facile de le fermer. Exigence du projet –

+0

Ouvrez l'enquête dans un popup puis. Vous n'aurez aucun problème à le fermer et vous n'interférerez pas avec le navigateur des utilisateurs. –

Répondre

8

Il n'existe aucun moyen de fermer une fenêtre parente via un script sans l'inviter dans un navigateur majeur.

Donc non, aucune garantie. Sur une fenêtre enfant, window.close et self.close fonctionnent tous deux très bien.

+0

Comment puis-je le fermer _avec invite? À ce stade, je voudrais juste le fermer de toute façon possible :) –

+1

Les moyens standard (window.close et self.close) utilisés pour lancer des invites dans IE, mais le test dans les derniers navigateurs montre que cela ne fonctionne pas. Exemple: http://www.jsfiddle.net/NEF9R/ Vous pouvez ne pas avoir de chance, sauf s'il existe une méthode différente. En théorie, il était possible de fermer le parent à partir d'un enfant via window.opener.close() mais à moins que je ne me trompe, je crois que cela a été annulé aussi. –

+0

Bummer. Merci pour la réponse rapide, cependant :) –

1

dans Firefox, vous ne pouvez pas fermer la fenêtre que l'utilisateur vous ouvre pouvez simplement fermer la fenêtre que vous ouvriez Firefox ne permet que pour des raisons de sécurité jeter un oeil à ceci: http://support.mozilla.com/en-US/questions/749393

cependant que Travaillons avec IE

espère que cela a aidé

1

Essayez celui (Travailler dans Chrome & IE) -

function closeWindow() { 
window.open('', '_self', ''); 
window.close(); 
} 
Questions connexes