Fehler: Sie können keine Internet Explorer-Fenster schließen, mithilfe der window.setTimeout(window.close,1)-Methode in Windows XP Service Pack 2


Problembeschreibung


Beim Klicken auf einen Hyperlink, der Microsoft Internet Explorer-Fenster schließen, wird Internet Explorer-Fenster nicht geschlossen. Dieses Problem tritt in Microsoft Windows XP Service Pack 2.

Ursache


Der Hyperlink verwendet die window.setTimeout(window.close,1) Methode, um Internet Explorer-Fenster zu schließen.

PROBLEMUMGEHUNG


Um dieses Problem zu umgehen, verwenden Sie window.setTimeout("window.close()", 1) -Methode oder die Methode window.close() , um Internet Explorer-Fenster zu schließen.

Im folgenden Codebeispiel können Sie umgehen veranschaulichen.
<html>
<body>
<script>
function TimeoutCloseWindow2()
{
window.setTimeout("window.close()", 1);
}
function DirectCloseWindow()
{
window.close();
}
</script>
<p>
<a href="javascript:TimeoutCloseWindow2();">Workaround 1: Click here to try to close the window by using window.setTimeout("window.close()", 1)</a>
</p>
<p>
<a href="javascript:DirectCloseWindow();">Workaround 2: Click here to try to close the window by using window.close()</a>
</p>
</body>
</html>

Status


Microsoft hat bestätigt, dass es einen Fehler in den Microsoft-Produkten gibt, die im Abschnitt "Gilt für" aufgeführt sind.

Weitere Informationen


Schritte zum Reproduzieren des Problems

  1. Klicken Sie auf Start, klicken Sie auf
    Ausführen, geben Sie Notepadund klicken Sie dann auf OK.
  2. Im folgenden Codebeispiel im Editor einfügen.
    <html>
    <body>
    <script>
    function TimeoutCloseWindow()
    {
    window.setTimeout(window.close, 1);
    }
    </script>
    <a href="javascript:TimeoutCloseWindow();">Click here to try to close the window by using window.setTimeout(window.close, 1)</a>
    </body>
    </html>
  3. Speichern Sie die Datei als Repro.html.
  4. Verwenden Sie Internet Explorer zum Öffnen der Datei Repro.html.

    Hinweis Wenn Internet Explorer die folgende Meldung angezeigt wird, klicken Sie auf die Nachricht und klicken Sie dann auf Geblockte Inhalte zulassen.

    Zu Ihrer Sicherheit wurde aus Sicherheitsgründen eingeschränkt diese Datei Anzeigen aktiver Inhalte, der Ihren Computer zugreifen können. Klicken Sie hier, um Optionen anzuzeigen.
  5. Klicken Sie auf den Link Klicken Sie hier, um mit window.setTimeout (window.close 1) schließen .

    Sie erwarten, dass das Internet Explorer-Fenster geschlossen. Das Fenster Internet Explorer wird jedoch nicht geschlossen.