具体是这样的:
Effect = {}
Effect.Transitions = {}
Effect.Transitions.linear = function(pos) {
return pos;
}
Effect.Base = function() {};
Effect.Base.prototype = {
setOptions: function(options) {
this.options = {
transition: Effect.Transitions.sinoidal,
duration: 1.0, // seconds
fps: 25.0, // max. 100fps
sync: false, // true for combining
from: 0.0,
to: 1.0
}.extend(options || {});
},
start: function(options) {
this.setOptions(options || {});
this.currentFrame = 0;
this.startOn = new Date().getTime();
this.finishOn = this.startOn + (this.options.duration*1000);
if(this.options.beforeStart) this.options.beforeStart(this);
if(!this.options.sync) this.loop();
}
}
自己认为Transitions和Base是Effect对象中的成员,而且也是对象.
(1) Effect.Base = function() {}和Effect.Transitions = {}具体是什么含义,
有什么区别吗?
(2) var aaa={m:2,n: "33 "}和上面有什么区别和联系吗?
(3) 上面有一个语句this.setOptions(options || {});中的{}代表什么?
大家帮忙看一下,谢谢!!!
------解决方案--------------------
自己认为Transitions和Base是Effect对象中的成员,而且也是对象.
(1) Effect.Base = function() {}和Effect.Transitions = {}具体是什么含义,
有什么区别吗?
(2) var aaa={m:2,n: "33 "}和上面有什么区别和联系吗?
(3) 上面有一个语句this.setOptions(options || {});中的{}代表什么?
大家帮忙看一下,谢谢!!!
---------------------
Transitions和Base是Effect对象中的成员,Transitions是对象,而Base是类
Effect.Base声明一个类,Effect.Transitions 是一个对象
var aaa={m:2,n: "33 "}声明一个对象,有2个成员变量
setOptions: function(options) {
this.options = {
transition: Effect.Transitions.sinoidal,
duration: 1.0, // seconds
fps: 25.0, // max. 100fps
sync: false, // true for combining
from: 0.0,
to: 1.0
}.extend(options || {});
}
extend(options || {});是把options里面的成员复制给this.options吧,如果options不存在,怎用一个匿名空对象
------解决方案--------------------
1.重新初始化一个空的对象 防止以前这个对象存在
2.好像没有
3.如果option为 null或false或0 传递一个新的对象
另外这个好像用了prototype