none
Redimensionar layer no IE RRS feed

  • Pergunta

  • Olá! Estou iniciando aqui então vou começar com uma questão bem típica: funciona no FireFox e no Safari, mas não no IE.

    Fiz um site em Flash e coloquei numa layer para que ficasse sempre em tela cheia. Ocorre que as pessoas tentam entrar usando um dinossauro com monitor 14" 800x600 e não conseguem ler nada. Então fiz um javascript para redimensionar a layer de acordo com a janela até um limite inferior conforme abaixo:

    <script language="javascript" type="text/javascript">
    window.onresize = function(){
            //var janW = window.innerWidth;
            //var janH = window.innerHeight;
            //alert('Janela redimensionada para '+janW+' x '+janH);
            ajustarJanela();
    }
    function ajustarJanela(){
            var janW = window.innerWidth;
            var janH = window.innerHeight;
            //alert('Janela redimensionada para '+janW+' x '+janH);
            var layer = document.getElementById('Layer1');
            if(janW<960){
                    layer.style.width = '960px';
            } else {
                    //alert('Janela redimensionada para '+janW+' x '+janH);
                    layer.style.width = String(janW) + 'px';
            }
            if(janH<580){
                    layer.style.height = '580px';
            } else {
                    //alert('Janela redimensionada para '+janW+' x '+janH);
                    layer.style.height = String(janH) + 'px';
            }
    }
    </script>
    
    </head>
    
    <body onload="ajustarJanela()">
    Vejam que eu ajusto quando o site é carregado e depois após cada redimensionamento. Funciona que é uma beleza no Safari e no Firefox, mas não do IE (testei 7 e 8)! Ele retorna argumento inválido na linha layer.style.width ou height. PORQUÊ??? Como dizem por aí: - please help! 
    sexta-feira, 23 de outubro de 2009 23:03

Respostas

Todas as Respostas

  • Fale,

    Olha esse link:

    http://www.beyondweblogs.com/post/Create-custom-pop-up-box-using-javascript-with-lightbox-effect.aspx

    Abraço


    Se a resposta solucionar sua dúvida, favor - Votar como Útil Abraço!
    • Marcado como Resposta gustavopi segunda-feira, 26 de outubro de 2009 17:37
    sábado, 24 de outubro de 2009 14:36
  • Oi,

    Já experimentou fazer um alert do valor que ele está retornando em layer.style.width/height e assim descobrir o que o IE está retornando ?

    []'s
    Dennes
    * Treinamento de ASP.NET 3.5 dia 24/10 - Apenas 12x R$ 70,88 - Inscreva-se em http://www.bufaloinfo.com.br/cursos/aspnet2.asp

    * Treinamento de Introdução a OO e Framework .NET c/C# dia  31/10 - Apenas 12 R$ 42,53  Inscreva-se em http://www.bufaloinfo.com.br/cursos/fundamentosOOFramework.asp

    Tel :  (11) 3170-3056  (21)9240-5134  E-Mail: contato arroba bufaloinfo.com.br
    http://www.bufaloinfo.com.br


    Dennes - Se resolveu, classifique a mensagem, por favor - [http://www.bufaloinfo.com.br] NOVO DVD Segurança no ASP.NET : http://www.bufaloinfo.com.br/LearingSeriesSegurancaASPNET2.asp
    sábado, 24 de outubro de 2009 14:40
  • Quando examinei o link do Erysson confirmei minha desconfiança (colocando alerts por tudo): tenho que fazer dois códigos, um para IE com document.documentElement.clientWidth e outro para o resto. É por aí o caminho...
    segunda-feira, 26 de outubro de 2009 17:40
  • Realmente, no IE window.innerWidth retorna indefinido, o IE usa um método próprio para isso. Terei que dividir o código em dois para agradar gregos e troianos.

    Valeu!
    segunda-feira, 26 de outubro de 2009 17:41
  • Bom dia! Erysson,

    Você conseguiu resolver este caso???

    Estou com o mesmo problema e gostaria de sua ajuda!!!

    Tenho um sistema em java criado por terceiros e roda em um coletor de dados com tela 640X240, a tela fica em 2 paginas com barra de rolagem e não pode ficar assim... teria que ficar em tela unica.

    Procurei varias coisas mas nada ajudou!!!

    O Coletor tem Windows CE 5.0 e IE 4 se não me engano.

    Obs.: Não poderei mexer no codigo, pois funciona para outros coletores com Windows CE 6.0 e IE 6, preciso de uma solução separada!

    Desde de já obrigado!


    Luiz Carlos


    • Editado LC-Locker quinta-feira, 7 de maio de 2015 12:27 erro
    quinta-feira, 7 de maio de 2015 12:26