• 使用自定义setTimeout和setInterval使之可以传递参数和对象参数


    转载自http://www.jb51.net/article/17859.htm

    /****************************************************** 
    // 
    // 功能: 修改window.setTimeout,使之可以传递参数和对象参数 
    // 使用方法: window.setTimeout(回调函数,延迟时间,参数1,参数n) 
    // 
    ******************************************************/ 
    var mySetTimeOut = setTimeout; 
    window.setTimeout = function(callback, timeout) 

    var args = Array.prototype.slice.call(arguments, 2); 
    function callFn(){callback.apply(null, args);} 
    return mySetTimeOut(callFn, timeout); 

    /****************************************************** 
    // 
    // 功能: 修改window.setInterval,使之可以传递参数和对象参数 
    // 使用方法: window.setInterval(回调函数,间隔时间,参数1,参数n) 
    // 
    ******************************************************/ 
    var mySetInterval = setInterval; 
    window.setInterval = function(callback, interval) 

    var args = Array.prototype.slice.call(arguments, 2); 
    function callFn(){callback.apply(null, args);} 
    return mySetInterval(callFn, interval); 

    // 测试代码传递object 
    // 普通参数就不举例了 
    var obj = {height: 40px;} 
    var testTimeout = testInterval = null; 
    function test(obj) 

    alert(obj.height); 
    clearSetTimeOut(testTimeout); 
    clearInterval(testInterval); 

    var testTimeout = window.setTimeout(test, 100, obj); 
    var testInterval = window.setInterval(test, 100, obj); 
    该函数兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且参数可以是object。

  • 相关阅读:
    致5年后的自己
    基础知识回顾——属性
    基础知识回顾——类和对象
    基础知识回顾——面向对象编程
    基础知识回顾——函数
    基础知识回顾——流程控制
    基础知识回顾——列表和字典
    基础知识回顾——元组和字符串
    基础知识回顾——通用序列操作
    XPath Checker和Firebug安装与使用
  • 原文地址:https://www.cnblogs.com/happycat1988/p/3440698.html
Copyright © 2020-2023  润新知