浏览 5582 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-10-16
上一个 post 里我说明了setTimeout和setInterval在运行机制和使用上面的区别。今天在更新RSSGo! Firefox extension(主要加入Live Strong blog的RSS feeds,可以在点击这里下载) 又发现一个区别。概括的说在调度动态参数的函数时,setTimeout 比 setInterval 要强大很多。
在例子场景设计:有一个RSS feeds容器,周期性的从容器中选取出一个feed, 如果遇到最后一条,那么下次选取跳到第一条。也就是说feed list是一个环形列表。 实现:我发现这个例子只能用setTimeout来实现,如果你能用setInterval做到同样的效果,welcome commets . var feeds = [’http://jack.lifegoo.com/?feed=rss2′, ‘http://jack.lifegoo.com/?feed=comments-rss2′, ‘http://sishen.lifegoo.com/?feed=rss2′, ‘http://sishen.lifegoo.com/?feed=comments-rss2′]; function myalert(i){ if(i < feeds.length) { alert(feeds[ i ++]); } else { i = 0; alert(feeds[ i ++]); } setTimeout("myAlert(" + i +")", 5000); } myAlert(0); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-10-16
我看不出有什么理由不用 setInterval(myalert(),5000),然后myalert()里每次取全局变量i的指并加1。
|
|
返回顶楼 | |
发表时间:2006-10-16
Lucas Lee 写道 我看不出有什么理由不用 setInterval(myalert(),5000),然后myalert()里每次取全局变量i的指并加1。 Thanks Lucas, u r right! I updated my blog:)
|
|
返回顶楼 | |