jWait jQuery 延迟插件开源项目

我要开发同款
匿名用户2016年11月25日
143阅读
开发技术JavaScript
所属分类jQuery插件、jQuery定时器插件
授权协议MIT

作品详情

jWait,ajqueryplugin,whichprovideaeasywaytodelayyourwork。

jQuery(zepto)插件,把各种延迟串联起来,采用管道式写法—为了少写几个setTimeout。

示例代码

原来

setTimeout(function (){    $('#b_1').addClass('active');},1000);

现在

$('#b_1').jWait(1000).addClass('active');

原来 

setTimeout(function (){    $('#b_1').addClass('active');    setTimeout(function (){         $('#b_2').css({color:red});    },1000);},1000);

==>现在 

$('#b_1').jWait(1000)         .addClass('active')         .jWait(1000)         .jWait('#b_2').css({color:red});

原来 

function doSth(){     //... }setTimeout(function (){    $('#b_1').addClass('active');    doSth();    setTimeout(function (){        doSth();        $('#b_2').css({color:red});    },1000);},1000);

==>现在 

function doSth(){     //... }$('#b_1').jWait(1000)         .addClass('active')         .jWait(doSth)         .jWait(1000)         .jWait(doSth)         .jWait('#b_2').css({color:red});

简单图解

$('#b_1').jWait(1000).addClass('active') //$('#b_1').addClass('active')    .jWait(1000)    .fadeIn() //$('#b_1').fadeIn()    .jWait('#b_2')//修改代理的对象为 $('#b_2')    .jWait(1000)    .css({color:'red'})//$('#b_2').css({color:'red'})    .jWait(function (){        //这里获取当前代理对象 this ==> $('#b_2')        console.log(this.css('color'));    })    .jWait(console)//修改代理的对象为 console    .log('hello') //console.log('hello')     .error('error');//console.error('error');

参数

/**      ** @param waitObj  绑定对象可以是 (数字,字符串,对象,方法)    * 1.数字 表示延迟的时间(单位:毫秒)    * 2.字符串 查询字符串querySelector,表示切换代理的对象为查询字符串代表的jquery对象    * 3.对象 代理的对象,表示切换代理的对象    * 4.方法 延迟后执行的函数,如果没有延迟,则直接执行    ** @param callback 回调方法,只有当waitObj是数字类型时有效    * @returns {jWaitProxy} 返回一个执行代理对象,一个神奇的对象  */ $.fn.jWait = function (waitObj, callback) { //.... }
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论