简体   繁体   中英

Increase Div Width with Javascript setTimeout()

我们如何使用setTimeout()增加或减小DIV的宽度?

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.

<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>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM