使用自定義setTimeout和setInterval使之可以傳遞參數(shù)和對(duì)象參數(shù)
更新時(shí)間:2009年04月24日 01:22:19 作者:
該函數(shù)兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且參數(shù)可以是object。
/******************************************************
//
// 功能: 修改window.setTimeout,使之可以傳遞參數(shù)和對(duì)象參數(shù)
// 使用方法: window.setTimeout(回調(diào)函數(shù),延遲時(shí)間,參數(shù)1,參數(shù)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,使之可以傳遞參數(shù)和對(duì)象參數(shù)
// 使用方法: window.setInterval(回調(diào)函數(shù),間隔時(shí)間,參數(shù)1,參數(shù)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
// 普通參數(shù)就不舉例了
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);
該函數(shù)兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且參數(shù)可以是object。
//
// 功能: 修改window.setTimeout,使之可以傳遞參數(shù)和對(duì)象參數(shù)
// 使用方法: window.setTimeout(回調(diào)函數(shù),延遲時(shí)間,參數(shù)1,參數(shù)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,使之可以傳遞參數(shù)和對(duì)象參數(shù)
// 使用方法: window.setInterval(回調(diào)函數(shù),間隔時(shí)間,參數(shù)1,參數(shù)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
// 普通參數(shù)就不舉例了
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);
該函數(shù)兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且參數(shù)可以是object。
您可能感興趣的文章:
- setInterval和setTimeout停止的方法
- Javascript延遲執(zhí)行實(shí)現(xiàn)方法(setTimeout)
- Js setInterval與setTimeout(定時(shí)執(zhí)行與循環(huán)執(zhí)行)的代碼(可以傳入?yún)?shù))
- JavaScript setTimeout和setInterval的使用方法 說明
- setTimeout與setInterval在不同瀏覽器下的差異
- javascript setTimeout和setInterval 的區(qū)別
- javascript 不停(setInterval)/延時(shí)(setTimeout)函數(shù)使用實(shí)例
- 給c#添加SetTimeout和SetInterval函數(shù)
- setInterval 和 setTimeout會(huì)產(chǎn)生內(nèi)存溢出
- setTimeout和setInterval的區(qū)別你真的了解嗎?
相關(guān)文章
使用JS進(jìn)行目錄上傳(相當(dāng)于批量上傳)
腳本使用了WScript.Shell和Scripting.FileSystemObject的組件,所以必須要在IE下面和打開安全選項(xiàng)中運(yùn)行; 另外還用到了Jquery. 代碼只是客戶端代碼, 至于服務(wù)器的接收代碼網(wǎng)上好多了2010-12-12js利用cookie實(shí)現(xiàn)記住用戶頁面操作
這篇文章主要給大家介紹了關(guān)于js利用cookie實(shí)現(xiàn)記住用戶頁面操作的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03uniapp實(shí)現(xiàn)點(diǎn)擊出現(xiàn)彈窗功能實(shí)例
這篇文章主要給大家介紹了關(guān)于uniapp實(shí)現(xiàn)點(diǎn)擊出現(xiàn)彈窗功能的相關(guān)資料,UniApp框架中提供了兩種不同類型的彈出框,以幫助我們滿足不同的需求,需要的朋友可以參考下2023-08-08