Paul McFedries' Web Home


Scrolling Status Bar Message

I've had a couple of readers ask me how to get a scrolling status bar message. If any of you are interested, I've included some JavaScript below that will do the job. Here's how to use it:

  • Copy everything between the <SCRIPT> and </SCRIPT> tags and insert it somewhere inside your Web page.
  • To specify the scrolling message, edit the following line in the script:
       var msg = "Enter your status bar message here"
    
  • To adjust the speed of the message, edit the following line (a smaller value gives you a faster scroll):
       var delay = 50
    
  • To adjust the starting position of the message, edit the following line (a smaller value starts the message closer to the left side of the window):
       var startPos = 100
    

Here's the full script:


<SCRIPT LANGUAGE="JavaScript">
<!--
// Use the following three variables 
// to set up the message:
var msg = "Enter your status bar message here"
var delay = 50
var startPos = 100

// Don't touch these variables:
var timerID = null
var timerRunning = false
var pos = 0

// Crank it up!
StartScrolling()

function StartScrolling(){
    // Make sure the clock is stopped
    StopTheClock()

    // Pad the message with spaces to 
    // get the "start" position
    for (var i = 0; i < startPos; i++) 
        msg = " " + msg

    // Off we go...
    DoTheScroll()
}

function StopTheClock(){
    if(timerRunning)
        clearTimeout(timerID)
    timerRunning = false
}

function DoTheScroll(){
    if (pos < msg.length)
        self.status = msg.substring(pos, msg.length);
    else
        pos=-1;
    ++pos
    timerRunning = true
    timerID = self.setTimeout("DoTheScroll()", delay)
}
//-->
</SCRIPT>


Copyright © 1995-2008 Paul McFedries and Logophilia Limited