Seeker
Seeker

Reputation: 1927

Increase Div Width with Javascript setTimeout()

How can we increase or Decrease width of a DIV using setTimeout() ??

Upvotes: 0

Views: 4076

Answers (2)

Steve Wasiura
Steve Wasiura

Reputation: 798

<div id="progressbar" style="background-color:green; margin-top: 10px; width:0px; height:10px;"></div>

<script>
// set var to rep width of progress bar div
var dwidth=0; 
// declare global variable for instance of Interval Timer so other funcs can access it.
IntervalId =0; 
// grow progress bar each second
IntervalId = setInterval(function() { dwidth +=5; document.getElementById('progressbar').style.width = dwidth+'px';}, 1000); 

// stop progress bar after 10 seconds
/* in real world an event handler would do this when iframe handling upload script loads response from upload */
setTimeout(function() { clearInterval ( IntervalId ); document.getElementById('progressbar').style.display='none' , 10000); 
</script>

Upvotes: 0

nonopolarity
nonopolarity

Reputation: 151106

setTimeout(function() { document.getElementById('foo').style.width = '300px' },
           2000);

a related blog and spec:

http://www.elated.com/articles/javascript-timers-with-settimeout-and-setinterval/
https://developer.mozilla.org/en/DOM/window.setTimeout

If you want to increase or decrease first by getting the current width, then you can look into clientWidth():

https://developer.mozilla.org/en/DOM/element.clientWidth

or use jQuery's width():

http://api.jquery.com/width/

jQuery is becoming very popular and even used by big corporations, so you can consider using it.

Upvotes: 1

Related Questions