使用 Dojo 动画效果
2010-04-13 00:00:00 来源:WEB开发网为了实现淡出的效果,我们可以动态地调整 opacity 属性改变元素的透明度,开始的时候值为 1 表示完全不透明,结束的时候值为 0,这个时候元素隐藏。通过设置步长与持续时间,我们可以计算出总共需要调用多少次 fadeOut 函数,在 fadeOut 函数里动态改变计数器及元素 opacity 的值,如果计数器值不为零则通过 setTimeout 函数设置在指定步长的时间之后继续调用 fadeOut 函数来降低元素的 opacity 属性值以实现 DOM 节点逐渐淡出的动画效果。
Dojo 动画效果库对这种机制进行了良好的封装,简化了调用接口,我们只需创建动画对象并设置动画属性,就可以在以后的程序中随时调用动画对象的 play 方法进行播放。
使用 dojo.animateProperty 创建动画
前面提到实现动画的原理是对 DOM 元素的属性进行迭代,不断修改其值以改变元素的位置和外观等。使用 dojo.animateProperty 函数可以方便地创建动画对象实现对一组元素属性值的迭代。同大多数 Dojo 控件的构造函数一样它接受一个 hash 对象作为参数,返回一个 dojo._Animation 对象,调用该对象的 play 方法进行播放。输入参数说明如下:
node:DOM 节点的 id 或者引用
properties:要进行迭代的 style 属性的数组。一般来说能够迭代的属性需要是数值类型的,但是某些属性如颜色,像 red,blue 这样的字符串也是可以的。每个属性又可以有 3 个参数:start,end 和 unit。start 和 end 用来指定属性开始和结束的值,unit 指定属性值的单位,如长度单位 px。在使用中并不一定需要指定所有的 3 个参数,如不指定 start 则会将当前属性值作为 start。
duration:动画效果的持续时间,单位毫秒。可选参数,默认值为 350 毫秒。
更多精彩
赞助商链接