Erro: É não é possível fechar uma janela do Internet Explorer utilizando o método window.setTimeout(window.close,1) no Windows XP Service Pack 2

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 884768
Sintomas
Quando clica numa hiperligação concebida para fechar uma janela do Microsoft Internet Explorer, a janela do Internet Explorer não encerra. Este problema ocorre no Microsoft Windows XP Service Pack 2.
Causa
A hiperligação utiliza o método window.setTimeout(window.close,1) para fechar a janela do Internet Explorer.
Como contornar
Para contornar este problema, utilizar o método window.setTimeout("window.close()", 1) ou o método window.close() para fechar a janela do Internet Explorer.

Pode utilizar o seguinte código de exemplo para demonstrar a solução alternativa.
<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>
Ponto Da Situação
A Microsoft confirmou que este erro ocorre nos produtos do Microsoft listados na secção "Aplica-se a".
Mais Informação

Passos para reproduzir o problema

  1. Clique em Iniciar , clique em Executar , escreva o bloco de notas e, em seguida, clique em OK .
  2. Coloque o seguinte exemplo de código no bloco de notas.
    <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. Guarde o ficheiro como Repro.html.
  4. Utilize o Internet Explorer para abrir o ficheiro Repro.html.

    Nota Se o Internet Explorer apresenta a seguinte mensagem, clique na mensagem e, em seguida, clique em Permitir conteúdo bloqueado .

    Para ajudar a proteger a sua segurança, o Internet Explorer restringiu este ficheiro de Mostrar conteúdo activo que pode aceder ao computador. Clique aqui para opções.
  5. Clique na hiperligação clique aqui para tentar fechar a janela utilizando window.setTimeout(window.close, 1) .

    Pensa que a janela do Internet Explorer para fechar. No entanto, a janela do Internet Explorer não encerra.
IE Windows XP SP2 fechar

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 884768 - Última Revisão: 10/11/2004 22:07:21 - Revisão: 1.2

Microsoft Windows XP Professional SP2, Microsoft Windows XP Home Edition SP2, Microsoft Windows XP Media Center Edition Service Pack 2 (SP2), Microsoft Windows XP Tablet PC Edition Service Pack 2 (SP2)

  • kbmt kbtshoot kbhtml kbscript kbwebbrowser kbbug KB884768 KbMtpt
Comentários