使用自定义setTimeout和setInterval使之可以传递参数和对象参数_javascript技巧
作者:西北人6668_733 | 来源:互联网 | 2018-05-14 13:30
该函数兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且参数可以是object。
/******************************************************
//
// 功能: 修改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。
推荐阅读
-
使用Ubuntu中的Python获取浏览器历史记录原文: ...
[详细]
蜡笔小新 2023-12-14 08:57:59
-
本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ...
[详细]
蜡笔小新 2023-12-13 20:01:16
-
-
本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ...
[详细]
蜡笔小新 2023-12-09 19:58:36
-
本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ...
[详细]
蜡笔小新 2023-12-09 03:01:43
-
场景1.IE,Firefox浏览器访问不了网站,谷歌浏览器可以,返回错误码DNS_PROBE_POSSIBLE.2.pingwww.qq.com可以ping通,ping局域 ...
[详细]
蜡笔小新 2023-10-17 17:55:37
-
python+selenium十:基于原生selenium的二次封装fromseleniumimportwebdriverfromselenium.webdriv ...
[详细]
蜡笔小新 2023-10-17 17:28:31
-
CSS|网格-行-结束属性原文:https://www.gee ...
[详细]
蜡笔小新 2023-10-17 15:21:56
-
作者|MitchellBaker责编|弯月出品|CSDN(ID:CSDNnews)如果想改变互联网,我们就不能故步自封。我加 ...
[详细]
蜡笔小新 2023-10-17 14:56:13
-
对Firefoxios源码的精简Firefox的依赖使用carthage来进行管理,国内的网络是在过于坑爹,相关的依赖包总是无法下载下来,花了两天时间,手动将Firefox所依赖的库导入 ...
[详细]
蜡笔小新 2023-10-17 14:50:00
-
一、用户行为三剑客以下3个CSS属性:user-select属性可以设置是否允许用户选择页面中的图文内容;user-modify属性可以设置是否允许输入 ...
[详细]
蜡笔小新 2023-10-17 14:35:15
-
使用python输入PDF编号自动下载freepatentsonline.com的文档#!usrbinenvpython3#codingutf-8#Version:python3. ...
[详细]
蜡笔小新 2023-10-17 12:29:08
-
当我在doWork方法中运行代码时,通过单击button1,进度条按预期工作.但是,当我从其他方法(即btn2,btn3)将列表传递给doWork方法时,进度条在启动后会跳转到10 ...
[详细]
蜡笔小新 2023-10-17 09:31:56
-
CentOS7系统目录LINUX有四种基本文件系统类型普通文件:如文本文件、C语言元代码、SHELL脚本、二进制的可执行文件等,可用cat、less、 ...
[详细]
蜡笔小新 2023-10-16 20:30:51
-
css,背景,位置,y,background, ...
[详细]
蜡笔小新 2023-10-16 16:28:38
-
文章目录sql注入漏洞漏扫单个网站基础sql扫描多个网站sql基础扫描时间盲注型扫描升阶版sq ...
[详细]
蜡笔小新 2023-10-16 15:19:31
-
西北人6668_733
这个家伙很懒,什么也没留下!