我是靠谱客的博主 失眠奇迹,最近开发中收集的这篇文章主要介绍Mootools中delay这个延迟函数的高级用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这是一种最简单的用法:

(function(){
  alert('one second later...');
}).delay(1000);

这个函数会在1秒之后自动被执行

我们看一下delay这个函数的实现方法:

delay: function(delay, bind, args){
  return setTimeout(this.pass((args == null ? [] : args), bind), delay);
}

很显然,它是使用了setTimeout来实现的,那么既然如此我们就可以清理他,下边是实现方法:

var Fun=function(msg){
    alert('fd');
};
var
timer=Fun.delay(5000);
//做某些操作之后清理timer
clearTimeout(timer);

 

接下来我说一下他的高级用法:

var Fun=function(msg){
alert(typeOf(this))//查看被绑定对象的类型
alert(this.get('tag')+'|'+msg);//显示对象名称和传递的参数
};
//2秒后执行Fun,同时把id='tab1'这个对象传递给Fun这个函数让其this为$('tab1'),然后传递一个参数
Fun.delay(2000,$('tab1'),'啊');

这段代码的意思是,延迟2秒,然后执行Fun这个函数,因为Fun这个函数我用了this,而默认状况下this对应的对象是window对象,而我却希望这个函数能够操作某个节点,所以呢,我就把对节点的绑定传递给了他,然后再传递msg,此时在函数内使用this是对象就不再是window了,而是变成了我给他绑定的这个节点对象.




转载于:https://www.cnblogs.com/see7di/archive/2011/11/14/2247735.html

最后

以上就是失眠奇迹为你收集整理的Mootools中delay这个延迟函数的高级用法的全部内容,希望文章能够帮你解决Mootools中delay这个延迟函数的高级用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部