settimeout 回调 递归妙用


对函数a进行3次循环,每隔一秒执行一次。但是for或while不能决定循环间隔的时间,想到递归,在a()执行完后调用setTimeout执行下一次循环。

	function b(){
		a()
		window.setTimeout(b,1000)
		}

 

例:循环变色,边框闪烁

<script language="javascript">
$(document).ready(function(){

	var i = 15

function change(obj) {
    yelo = function (obj) {
        obj.css("border", "1px solid  #FF0")
    }
    red = function (obj) {
        obj.css("border", "1px solid red")
    }
    if (i < 0) {
        window.clearTimeout(Go);
        return false;
    }
    if (i % 2 == 1) {
        yelo(obj)
    } else {
        red(obj)
    }
    Go = window.setTimeout(function () {
        change(obj)
    }, 200)
    i--
}
change($('.div'))
	})
</script>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM