| SECÇÃO ANTERIOR |

Extensão das Potencialidades
Javascript


Utilização de Scripts Javascript

Embora existam de facto, utilizações extremamente elaboradas desta linguagem de programação, vamos ficar nestes exemplos pelo reino da simplicidade.

Em termos de utilização de Javascript, não há nada mais simples do que um pequeno comando (ou, uma pequena instrução de programação) que, na utilização que vamos sugerir, parece ser mais um simples acrescento às potencialidades do HTML que outra coisa qualquer. Trata-se da instrução onMouseOver. Serve para instruir o browser a executar uma acção, quando se passar com o rato em cima de uma dada zona do lexia. Por exemplo, pode instruir-se o browser para mostrar uma legenda na status bar (a barra de baixo, na janela do browser), quando o utilizador passar por cima de um dado link -- passe com o rato por cima do link no parágrafo de cima e veja esta instrução a funcionar.
         Esta função pode ser muito útil (N.B.: no caso do Internet Explorer, este efeito pode ser ainda melhor conseguido através do parâmetro HTML title="texto"; veja a utilização deste parâmetro em baixo), na medida em que permite explicar os links aos utilizadores, nomeadamente esclarecendo-os quando se tratar de links para o exterior. Muitos utilizadores deste hipertexto devem ter ficado pontualmente desesperados pela forma como misturamos neste trabalho links para fora com links para dentro, causando verdadeiras perturbações na navegação, quando poderiamos usar esta simples instrução para esclarecer as coisas (foi uma opção pedagógica: este curso é uma base para explorar e as explicações poderiam inibir a vontade de descobrir...).
         Esta instrução extremamente útil e de utilização sistemática extremamente recomendada, concretiza-se assim:

código HTML do link acima, sem alteração:

<a href="http://www.alchemy-computing.co.uk/joust/index.htm" target="_top">utilizações extremamente elaboradas</a>
código HTML do link acima, com a simples alteração:

<a href="http://www.alchemy-computing.co.uk/joust/index.htm" target="_top" onMouseOver="window.status='Ligação ao site da Alchemy Computing Ltd.'; return true">utilizações extremamente elaboradas</a>

Utilizada desta maneira, esta instrução parece ser, apesar de estranha, um simples acrescento ao Javascript. Normalmente, não é isto que acontece. Por exemplo, na status bar deste lexia, quando o rato não se encontra em cima do link para o site da Alchemy Computing, surge a identificação: "Utilização de Scripts Javascript".
         Para obter este efeito, deve introduzir-se no código HTML (em princípio, em cima, antes do texto começar, eventualmente dentro da zona dedicada ao cabeçalho), as seguintes linhas:

<script language='JavaScript'>
<!--
{ window.defaultStatus = "Utilização de Scripts Javascript"
}

//-->
</script>

Na maior parte dos casos, começa por se identificar uma parte do código como sendo Javascript (de <script language='JavaScript'> até </script>). As linhas <!-- e //--> são marcação de comentário, para esconder o script de browsers que não sejam compatíveis com a linguagem Javascript (neste caso, se não fosse a existência destas duas linhas, as linha que sobram, com a função que é executada para produzir o resultado na status bar, seriam apresentadas como texto corrido).

O caso mais vulgar é quando se define uma função da forma que é apresentada acima, para ser invocada mais tarde no corpo do código a fim de se obter um efeito específico. Vejamos o caso concreto da abertura de uma janela secundária (uma característica que pode ser muito útil, mas também, nomeadamente quando é utilizada para publicidade, muito irritante!).
         O que se vai abrir numa janela secundária é um dado lexia. Se este já existir, óptimo. Se não, há que criá-lo! Em qualquer dos casos, este lexia terá o seu URL, que terá de ser invocado pela função. Outra característica essencial de uma janela secundária, é que tem de se lhe atribuir um nome. Estas duas características são obrigatórias.
         Opcionalmente, podem definir-se as seguintes características: tamanho da janela; se se quer que ela seja dotada de botões, de menus e de barra de localização; e se se quer que ela possa ser alterada pelo utilizador, em termos de tamanho.

<script language="JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) {
window.open(theURL,winName,features);
}

//-->
</script>

Na zona de definição de funções Javascript, fica este código, que define uma função MM_openBrWindow (tem este nome, mas podia chamar-se "tiazinha"; é irrelevante), que invoca a instrução window.open do Javascript, com determinados parâmetros, relativos às características referidas acima.

Já que estamos a falar de extensões ao HTML, introduzamos o Flash, através de uma janela secundária, graças à seguinte utilização da função definida acima:

<a href="#flash" onClick="MM_openBrWindow('flash.html', 'flash', 'status=yes, menubar=yes,
scrollbars=yes, resizable=yes, width=450, height=400')">
Flash</a>

Para abrir o URL "flash.html" na janela secundária chamada "flash", é necessário executar uma ligação. Por este motivo, introduziu-se uma bookmark (<a name="flash"></a>)no princípio da linha, de modo a manter o foco do browser nesta linha (daí o a href="#flash"). Os outros parâmetros são auto-explicativos.

N.B.: uma das utilizações mais estafadas do Javascript é a sua utilização para obter o efeito de alteração de menus, quando se passa o rato por cima (o que é parcialmente conseguido graças ao recurso à instrução onMouseOver explicada acima). As colecções de scripts listadas neste site incluem inúmeros scripts para este efeito, para além de uma infinidade de outros. Procure, que encontrará (o termo inglês para o efeito é rollover). Alternativamente, para obter recursos em português, procure no SAPO por Javascript e investigue os resultados (não incluimos links directos devido à extrema votalidade dos sites amadores portugueses).

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| TOPO DA PÁGINA | SECÇÃO ANTERIOR |


Companhia Nacional de Serviços
© 1999, 1998 CNS - Companhia Nacional de Serviços SA. - Todos os direitos reservados.