解决方法:
function doScaledTimeout(i) {
setTimeout(function() {
console.log(i);
}, i * 5000);
}
for (var i = 1; i <= 4; ++i){
doScaledTimeout(i);
}解释:
for 循环(i)传给函数 doScaledTimeout()
setTimeout 延迟用 i * 5000 = 循环次数 * 5秒。
高级版:
<div class="buys1"></div>
<script>
$(function(){
var m = ['<p>韩小姐(139**2527)获取淡斑方案</p>',
'<p>顾小姐(150**3600)获取淡斑方案</p>',
'<p>王小姐(151**2821)获取淡斑方案</p>',
'<p>李小姐(152**2021)获取淡斑方案</p>',
'<p>卢小姐(153**2526)获取淡斑方案</p>',
'<p>崔小姐(155**2006)获取淡斑方案</p>',
'<p>段小姐(156**8507)获取淡斑方案</p>',
'<p>胡小姐(158**2407)获取淡斑方案</p>'];
function doScaledTimeout(i) {
setTimeout(function() {
console.log(m[i]);
$('.buys1').show().empty().append(m[i]).stop().delay(1000).fadeOut(2000);
}, i * 6000);
}
function timefor(){
for (var i = 0; i<m.length; i++){
doScaledTimeout(i);
}
}
timefor();
setInterval(timefor,48000);
})
</script>
循环调用 延迟函数。