Desenvolvimento
Teste 12 - clientWidth/innerWidth e clientHeight/innerHeight
Ao clicar na figura abaixo, uma mensagem contendo as dimensões ativas do browser do usuário é mostrada. Experimente redimensionar a tela para ver resultados diferentes.
Eis o código:
<head>
<script>
function findPageHeight() {
if (window.innerHeight != null) // Para o Netscape
return window.innerHeight
if (document.body.clientHeight != null) // Para o Internet Explorer
return document.body.clientHeight
return (null);
}
function findPageWidth() {
if (window.innerWidth != null) // Para o Netscape
return window.innerWidth
if (document.body.clientWidth != null) // Para o Internet Explorer
return document.body.clientWidth
return (null);
}
function showPageDim() {
livePageHeight = findPageHeight()
livePageWidth = findPageWidth()
alert('Largura visível da página: ' + livePageWidth + 'px. \n \
Altura visível da página: ' + livePageHeight + 'px.')
}
</script>
</head>
<body>
<div align="center">
<img src="../../images/photos/pht_Jack.jpg" border="0" onClick="showPageDim()" />
</div>
</body>
O evento onClick da imagem do Jack Nicholson corresponde à função showPageDim(), que mostra as dimensões da página. Duas variáveis recebem os resultados de duas outras funções, cada uma responsável por coletar uma dimensão (altura - Height e largura - Width). O comando alert faz a concatenação dos resultados com um texto para emissão numa caixa de mensagem.
As cláusulas if estão sendo usadas para retornar os valores de largura e altura, dependendo do browser usado. Para cada browser, há um jeito diferente de referenciar estas propriedades.