10- Outras Mensagens de Rodapé

Use agora este outro script para criar a mensagem de rodapé móvel.

O local para aplicar é o mesmo, antes de </BODY>, no final da Origem.

 


 

<SCRIPT language=JavaScript> 

ScrollSpeed = 300; // milliseconds between scrolls
ScrollChars = 4; // chars scrolled per time period

function SetupTicker() {
// add space to the left of the message
msg = " *** Romy Bastos *** robrb@uol.com.br *** Campo Limpo Paulista-SP *** ";
RunTicker();}

function RunTicker() {
window.setTimeout('RunTicker()',ScrollSpeed);
window.status = msg;
msg = msg.substring(ScrollChars) + msg.substring(0,ScrollChars);}
SetupTicker();

<!-- end -->
</SCRIPT>


Onde há um número grifado em vermelho é possível alterar a velocidade com que a mensagem vai correr no rodapé.  Quanto maior o número, mais lenta a velocidade.

Experimente alterar para 600 e verá que o texto vai correr bem mais lentamente.

Vale repetir, sempre, que se você imprimir estas instruções, será mais fácil acompanhar e colocar em prática.

 

Veja agora o efeito deste outro tipo de mensagem, com o texto fragmentado em flashes:


 

<SCRIPT language=JavaScript>
<!--// Copyright 1996 - Tomer and Yehuda Shiran
// This example will appear in our forthcoming book on JavaScript.
// Feel free to "steal" this code provided that you leave this notice as is.
// Additional examples from the book can be found at http://www.geocities.com/SiliconValley/9000/
// For more information contact Tomer or Yehuda Shiran <yshiran@iil.intel.com>

// set speed of banner (pause in milliseconds between addition of new character)
var speed = 10 

// decrease value to increase speed (must be positive)
// set pause between completion of message and beginning of following message
var pause = 1500 

// increase value to increase pause
// set initial values
var timerID = null
var bannerRunning = false

// create array
var ar = new Array()

// assign the strings to the array's elements
ar[0] = "Substitua estas frases em vermelho"
ar[1] = "digitando na origem, "
ar[2] = "lembrando sempre"
ar[3] = "de preservar as aspas!"

// assign index of current message
var message = 0

// empty string initialization
var state = ""

// no value is currently being displayed
clearState()

// stop the banner if it is currently running
function stopBanner() { 
// if banner is currently running 
if (bannerRunning) 
// stop the banner 
clearTimeout(timerID) 
// timer is now stopped 
timerRunning = false
}

// start the banner
function startBanner() { 
// make sure the banner is stopped 
stopBanner() 
// start the banner from the current position 
showBanner()
}

// assign state a string of "0" characters of the length of the current message
function clearState() { 
// initialize to empty string 
state = "" 
// create string of same length containing 0 digits 
for (var i = 0; i < ar[message].length; ++i) { 
state += "0" 
}
}

// display the current message
function showBanner() { 
// if the current message is done 
if (getString()) { 
// increment message 
message++ 
// if new message is out of range wrap around to first message 
if (ar.length <= message) 
message = 0 
// new message is first displayed as empty string 
clearState() 
// display next character after pause milliseconds 
timerID = setTimeout("showBanner()", pause) 

else { 
// initialize to empty string 
var str = "" 
// built string to be displayed (only character selected thus far are displayed) 
for (var j = 0; j < state.length; ++j) { 
str += (state.charAt(j) == "1") ? ar[message].charAt(j) : " " 

// partial string is placed in status bar 
window.status = str 
// add another character after speed milliseconds 
timerID = setTimeout("showBanner()", speed) 
}
}

function getString() { 
// set variable to true (it will stay true unless proven otherwise) 
var full = true 
// set variable to false if a free space is found in string (a not-displayed char) 
for (var j = 0; j < state.length; ++j) { 
// if character at index j of current message has not been placed in displayed string 
if (state.charAt(j) == 0) 
full = false 

// return true immediately if no space found (avoid infinitive loop later) 
if (full) return true 
// search for random until free space found (braoken up via break statement) 
while (1) { 
// a random number (between 0 and state.length - 1 == message.length - 1) 
var num = getRandom(ar[message].length) 
// if free space found break infinitive loop 
if (state.charAt(num) == "0") 
break 

// replace the 0 character with 1 character at place found 
state = state.substring(0, num) + "1" + state.substring(num + 1, state.length) 
// return false because the string was not full (free space was found) 
return false
}

function getRandom(max) { 
// create instance of current date 
var now = new Date() 
// create a random number (good generator) 
var num = now.getTime() * now.getSeconds() * Math.random() 
// cut random number to value between 0 and max - 1, inclusive 
return num % max
}
startBanner()
// -->
</SCRIPT>


Em seguida vamos às tabelas, elementos que se portam eventualmente como molduras para texto ou figuras.  Veja na próxima página.