YUI学习笔记(3)

作者:xujiwei 来源:HotHeart's BLOG 时间:2009-01-21 16:24:00 

阅读《YUI学习笔记(1)》《YUI学习笔记(2)

YAHOO.lang.later,YAHOO.lang.trim,YAHOO.lang.isXXX 以及 YAHOO.lang.hasOwnProperty。

1. YAHOO.lang.later(yahoo/yahoo.js)

later 方法用来延迟执行方法,是对 setInterval 和 setTimeout 的封装,并且可以传递参数到延迟执行的函数或者使用参数数组批量执行指定的函数。

later 方法的签名为:

later: function(when, o, fn, data, periodic)

when 是用来指定在多长时间后执行指定的函数,以毫秒计算;

o 是上下文对象,即在要执行的函数里使用 this 是会引用这个 o 对象;

fn 就是要延迟执行的函数了,可以传递一个函数引用,也可以传递一个字符串,later 方法会在 o 对象中查找对应名称的属性来做为要执行的方法;

data 就是传递给延迟执行的函数的参数了,可以为一个参数,或者是一个参数数组,那么如果我们要传递的参数本身就是一个数组的话,就要自己先把这个参数数组包装成一个数组;

peridoic 参数是一个布尔值,用来表示延迟执行的函数是否需要周期执行而不是只执行一次。

later 方法执行后会返回一个对象,包含了一个名 interval 的属性用来表示函数是以 setInterval 来执行的还是以 setTimeout 来执行的,以及一个方法 cancel 用来取消执行被延迟执行的函数。嗯,不过只有在 peridoic 为 true 时这个 cancel 方法比较有用,毕竟如果 peridoic 为 false 时函数执行一次就不会再执行了,cancel 也没有什么意义。

{
    interval: periodic,
    cancel: function() {
    if (this.interval) {
        clearInterval(r);
    } else {
        clearTimeout(r);
    }
    }
};

标签:yui,笔记,yahoo,trim,JavaScript
0
投稿

猜你喜欢

  • IE8 的 noscript 标签 Bug

    2009-08-18 12:37:00
  • 如何获得刚插入数据库的记录的ID号?

    2009-09-10 11:33:00
  • 常见Dreamweaver使用过程中的问题及解决办法

    2011-03-17 16:16:00
  • 如何在asp中创建DSN?

    2009-11-14 20:46:00
  • asp如何做一个随机密码产生器?

    2010-07-12 18:57:00
  • Sql Server 2012 转换函数的比较(Cast、Convert和Parse)

    2012-08-21 10:21:40
  • MYSQL的DATE_FORMAT()格式化日期

    2009-02-27 16:04:00
  • JavaScript在ASP页面中实现掩码文本框效果代码

    2013-06-01 19:57:23
  • CSS的书写顺序规范

    2008-06-12 13:51:00
  • 安装MySQL的步骤和方法

    2009-07-30 08:38:00
  • SQL的小常识, 备忘之用, 慢慢补充.

    2011-11-03 17:19:45
  • JavaScript版无组件上传类

    2007-10-06 23:16:00
  • JavaScript链式调用的设计

    2009-12-04 12:46:00
  • js自定义快捷,IE,FF有良好的支持

    2007-08-25 17:34:00
  • 银行账号输入格式化, 支持部分浏缆器

    2007-09-26 18:27:00
  • 设计与用户体验

    2009-05-06 13:36:00
  • XPath 1.0 学习笔记

    2009-02-25 12:19:00
  • 使用window.name解决跨域问题

    2008-09-04 12:10:00
  • ASp使用AspJpeg组件制作透明文字水印

    2008-01-15 20:25:00
  • 使用SSIS创建同步数据库数据任务的方法

    2012-11-30 19:53:44
  • asp之家 网络编程 m.aspxhome.com