Programação para Internet Rica 1 Guia de Referência JavaScript: Interagindo com o Navegador Prof. Daniel Caetano Objetivo: Apresentar os elementos mais comuns pelos quais o JavaScript pode interagir com o navegador. Bibliografia: W3,2009; MCLAUGHLIN,2008; MUTO,2006; RATSCHILLER,2000. INTRODUÇÃO O Objetivo deste texto é servir de apoio na criação de sites web, indicando os elementos comuns de um navegador que podem ser modificados com o uso do JavaScript. Não se pretende com este documento explicar o uso da tecnologia JavaScript, visto que isso foi feito em aula específica, mas sim apresentar uma grande variedade de elementos cuja discussão não é possível em aula, devido a restrições de tempo. 1. EVENTOS COMUNS A maioria doa elementos do HTML causam eventos, aos quais podemos associar funções de JavaScript. Os eventos mais comuns são listados a seguir. BODY e FRAMESET onload Quando um documento inicia seu carregamento onunload Quando um documento inicia seu "descarregamento" Elementos de FORM onblur Quando o elemento perde o foco onchange Quando o conteúdo de um elemento for alterado onfocus Quando o elemento receber foco onreset Quando o form for resetado onselect Quando um elemento for selecionado onsubmit Quando o formulário for enviado Eventos de Teclado (válido para quase todos os elementos) onkeydown Quando uma tecla for pressionada (com foco no elemento) onkeypress Quando uma tecla for pressionada e solta (com foco no elem.) onkeyup Quando uma tecla for solta (com foco no elemento)
Programação para Internet Rica 2 Eventos de Mouse (válido para quase todos os elementos) onclick Quando o elemento for clicado ondbclick Quando o elemento for duplamente clicado onmousedown Quando o botão do mouse for apertado sobre o elemento onmousemove Quando o mouse se mover sobre o elemento onmouseout Quando o mouse sair de cima do elemento onmouseover Quando o mouse passar sobre o elemento onmouseup Quando o botão do mouse for solto sobre o elemento 2. ESTILOS VISUAIS QUE PODEM SER ALTERADOS As propriedades visuais dos elementos podem ser acessadas com nomes específicos, permitindo a alteração de estilos em tempo de execução. A lista de estilos mais comuns está apresentada a seguir. Plano de Fundo backgroundattachment backgroundcolor backgroundimage backgroundposition backgroundpositionx backgroundpositiony backgroundrepeat Textos color fontfamily fontsize fontsizeadjust fontstretch fontstyle fontvariant fontweight letterspacing lineheight quotes textalign textdecoration textindent textshadow texttransform whitespace wordspacing Indica se a imagem de fundo é fixa ou rola Muda cor de fundo de um elemento. Muda a imagem de fundo de um elemento Muda a posição de uma imagem de fundo Muda a posição "x" da imagem de fundo Muda a posição "y" da imagem de fundo Define se e como a imagem de fundo será repetida Muda a cor do texto Muda o tipo de fonte Muda o tamanho da fonte Muda / ajusta o tamanho de um texto Estica ou aperta uma fonte Muda o estilo da fonte Texto em "mini-maiúsculas" Muda a espessura da fonte Muda o espaçamento entre letras Muda a altura de uma linha Muda o tipo de "aspas" do texto. Muda o alinhamento do texto Muda a "decoração" de um texto Muda a intendação da 1a. linha de texto Muda a sombra do texto Texto com todas as iniciais em maiúsculas Muda o comportamento de quebra de linha em espaços Muda o comp. de quebra de linha em palavras
Programação para Internet Rica 3 Bordas e Margens borderbottomcolor borderbottomstyle borderbottomwidth bordercolor borderleftcolor borderleftstyle borderleftwidth borderrightcolor borderrightstyle borderrightwidth borderstyle bordertopcolor bordertopstyle bordertopwidth borderwidth margin marginbottom marginleft marginright margintop outlinecolor outlinestyle outlinewidth padding paddingbottom paddingleft paddingright paddingtop Layout clear clip counterincrement counterreset cssfloat cursor direction display height markeroffset marks maxheight maxwidth minheight minwidth Muda cor da borda de baixo Muda estilo da borda de baixo Muda largura da borda de baixo Muda a cor das bordas todas Muda cor da borda esquerda Muda estilo da borda esquerda Muda largura da borda esquerda Muda cor da borda direita Muda estilo da borda direira Muda largura da borda direita Muda estilo de todas as bordas Muda cor da borda superior Muda estilo da borda superior Muda largura da borda superior Muda largura de todas as bordas Muda todas as margens Muda a margem inferior Muda a margem esquerda Muda a margem direita Muda a margem superior Muda a cor da linha de contorno Muda o estilo da linha de contorno Muda a largura da linha de contorno Muda espaçamento interno de um elemento Muda espaçamento interno inferior Muda espaçamento interno esquerdo Muda espaçamento interno direito Muda espaçamento interno superior Define em qual lado do elemento não há "float" Determina o formato de um elemento Incrementa elementos de contagem Inicializa os elementos de contagem Define quando uma imagem ou texto fica "float" Muda o cursor a ser apresentado Muda a direção do texto de um elemento Muda a maneira que o elemento será apresentado Muda a altura de um elemento Muda a distância entre marcadores de caixas Indica se os marcadores de impressão serão impressos Muda a máxima altura de um elemento Muda a máxima largura de um elemento Muda a mínima altura de um elemento Muda a mínima largura de um elemento
Programação para Internet Rica 4 overflow verticalalign visibility width Listas liststyleimage liststyleposition liststyletype O que fazer com conteúdo que não cabem no elemento. Muda o alinhamento vertical de um elemento Muda a visibilidade de um elemento Muda a largura de um elemento Muda a imagem de marcador de lista Muda a posição do marcador de lista Muda o tipo de marcador de lista Posicionamento bottom Define a dist. inferior entre elemento atual e outros left Define a dist. esquerda entre elemento atual e outros position Define o tipo de posicionamento (absoluto, relativo...) right Define a dist. direita entre elemento atual e outros top Define a dist. superior entre elemento atual e outros zindex Define a ordem vertical de um elemento Impressão orphans page pagebreakafter pagebreakbefore pagebreakinside size widows Tabelas bordercollapse borderspacing captionside emptycells tablelayout Mínimo de linhas (do parág.) no inferior da página. Muda o tipo ode página para apresentar um elemento Comportamento do "page break" depois do elemento Comportamento do "page break" antes do elemento Define o comportamento do "page break" no elemento Orientação e tamanho da página Mínimo de linhas (do parág.) no topo da página Define se as bordas se sobrepõem ou não Define o espaçamento entre bordas de células Muda a posição da legenda Define se células vazias serão apresentadas Muda o algoritmo de apresentação da tabela Barra de Rolagem (Só no IE) scrollbar3dlightcolor Muda a cor da parte brilhante da barra de rolagem scrollbararrowcolor Muda a cor da seta da barra de rolagem scrollbarbasecolor Muda a cor base da barra de rolagem scrollbardarkshadowcolor Muda a cor da parte sombreada da barra de rolagem scrollbarfacecolor Muda a cor de frente da barra de rolagem scrollbarhighlightcolor Muda a parte brilhante da barra de rolagem scrollbarshadowcolor Muda a parte sombreada da barra de rolagem scrollbartrackcolor Muda a cor de fundo da barra de rolagem
Programação para Internet Rica 5 Propriedades Genéricas dir lang title Muda ou retorna a direção de um texto Muda ou retorna o código de língua de um elemento Muda ou retorna o título de um elemento. 3. ELEMENTOS DE JANELA COMUMENTE USADOS Os elementos da janela podem ser acessados iniciando-se com o indicador "window". Por exemplo: para desligar a barra de status de uma janela, usa-se: window.statusbar = false; Os elementos normalmente acessados são: window.location Endereço da janela (veja na seção 8) window.name Nome da janela window.parent Janela "pai" window.personalbar Barra personalizada window.scrollbars Muda a visibilidade das barras de rolagem window.status Referência para a barra de status window.statusbar Muda a visibilidade da barra de status window.toolbar Muda a visibilidade da barra de ferramentas A janela também fornece alguns métodos (apenas os mais comuns são citados): window.alert() window. blur() window. close() window. confirm() window. createpopup() window. focus() window. moveby() window. moveto() window. open() window. print() window. prompt() window. resizeby() window. resizeto() window. scrollby() window. scrollto() Mostra uma janela de alerta com o texto indicado Tira o foco da janela atual Fecha a janela Apresenta uma janela do tipo "OK/Cancel" Abre uma janela popup Muda o foco para a janela atual Move a janela relativamente à sua posição Move a janela de maneira absoluta Abre uma nova janela do navegador Imprime o conteúdo da janela Abre uma janela que pede informações para o usuário Muda o tamanho da janela de maneira relativa Muda o tamanho da janela de maneira absoluta Rola o conteúdo de maneira relativa Tola o conteúdo de maneira fixa
Programação para Internet Rica 6 A janela possui, ainda, alguns eventos, sendo os mais usados apresentados abaixo: window.onload window.onfocus window.onblur 4. ELEMENTOS DE LOCAÇÃO E TELA Os elementos de locação (window.location....) servem para manipular a localização atual do navegador. Os elementos de tela (screen....) servem para ler os dados da tela do usuário. Os atributos mais comuns estão listados a seguir: window.location.host window.location.hostname window.location.href window.location.pathname window.location.port window.location.protocol window.location.search screen.availheight screen.bufferdepth screen.colordepth screen.devicexdpi screen.deviceydpi screen.fontsmoothingenabled screen.height screen.logicalxdpi screen.logicalydpi screen.pixeldepth screen.updateinterval screen.width Indica o servidor e porta da URL Indica o servidor da URL Indica a URL inteira Indica o caminho da URL Indica a porta da URL Indica o protocolo da URL Indica os dados após a? na URL Altura da tela (menos a barra de tarefas) Profundidade de cores do buffer (só IE) Profundidade de cores da tela Número de pontos por polegada horz. (só IE) Número de pontos por polegada vert. (só IE) Se suavizamento de fontes está ligado (só IE) Altura da tela Pontos por polegada normais horz. (só IE) Pontos por polegada normais vert. (só IE) Resolução em cores da tela (menos IE) Refresh da tela (só IE) Largura da tela Alguns métodos também estão disponíveis (apenas os mais comuns são citados): window.location.assign() window.location.reload() window.location.replace() Carrega um novo documento Recarrega o documento atual Substitui o documento atual por um novo