Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) focus só funciona depois de executar o alert


Mario Junior

Pergunta

Bom dia.

Estou com um problema que não faço idéia do que seja.

A parte de código abaixo é responsável pelo carregamento da página e da execução do focus.

var theDocument = createMsxml2DOMDocumentObject();
        theDocument.async = false;
        theDocument.load(xmlResponse);
        // display the page of products
        var gridDiv = document.getElementById(gridDivId);
        gridDiv.innerHTML = theDocument.transformNode(stylesheetDoc);
        
document.getElementById('qtd').focus();

Acontece que quando o código carrega am página...o foco não é movido para o Id acima...somente é movido se eu colocar, antes do comando do focus, um alert qualquer..

No Firefox funciona normalmente, isso só acontece no IE.

Se alguém puder me ajudar, seria de grande ajuda mesmo.

Obrigado desde já.

Olá pessoal.

Desculpem a insistência. Eu estava verificando o código para ver se encontrava alguma possibilidade e não encontrei.

O Pior é que (vejam que estranho): eu havia falado que se eu colocasse um alert antes da chamada do focus(), o foco se movia.

Isso acontece mesmo...e outra coisa..se ao invés de eu chamar o focus eu agregar um style ao id que eu pretendo focar, ele aplica o style numa boa...só o focus que não vai.

Detalhe, o navegador não me acusa nenhum erro..e não há erro mesmo pois se houvesse, nem se eu colocasse o alert antes da chamada do focus(), ele não focaria.

O que será que pode estar ocorrendo?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa tarde.

Pessoal, depois de muito procurar, meu colega de trabalho Benivaldo encontrou uma solução para este problema.

Bastou colocar,no lugar da chamada focus() a chamada select();

var theDocument = createMsxml2DOMDocumentObject();
        theDocument.async = false;
        theDocument.load(xmlResponse);
        // display the page of products
        var gridDiv = document.getElementById(gridDivId);
        gridDiv.innerHTML = theDocument.transformNode(stylesheetDoc);
        

document.getElementById('qtd').select();

Até mais.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...