animate:function(obj,attr,val)
{
var d=1000;
if(obj[attr+'timer']) clearInterval(obj[attr+'timer']);
var start = parseInt(animation.css(obj,attr));
//动画开始位置
var space=val-start,
//动画要运动的距离
st=(new Date).getTime(),
m=space>0? 'ceil':'floor';
obj[attr+'timer']=setInterval(function()
{
var t=(new Date).getTime()-st;
//运行时间
if (t<d)
{
animation.css(obj,attr,Math[m](animation.easing['easeOut'](t,start,space,d)) +'px');
}
else
{
clearInterval(obj[attr+'timer']);
animation.css(obj,attr,top+space+'px');
}
},20);
},
代码下面有个top+space+'px'这里的top不知道如何理解,虽然这是代码的一部分,但是其他地方都没有top这个变量。我测试了一下,top是一个对象。
top 应该是某个地方定义的一个变量,用来保存一个位置值。既然是别的人代码,有可能你抄的时候没抄到定义的那一段。
如果没有定义 top 这个变量,直接使用的 top 是 window.top,表示顶层窗口(主要针对框架页面而言,如果没有框架,顶层窗口就是当前窗口),这个时候的 top 是不能参与 + 运算的,因为它是一个对象,不管用于数值型的 + 还是字符串连接都无意义(特殊情况除外,你这里不像是特殊情况)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。