JavaScript封装动画函数然后分别调用时出现的问题

Luminous116 2018-01-01 09:15:51

效果出现这种情况,下面附代码,求助大牛们,代码哪里要修改一下
function $(id) {
return document.getElementById(id);
}
function animate(obj,target) {
var timer;
var left = obj.offsetLeft;
var speed = left > target ? -1 : 1;
timer = setInterval(function() {
left = left + speed;
obj.style.left = left + "px";
if(left == target) {
clearInterval(timer);
}
},1)
}
window.onload = function() {
$("one").onmouseover = function() {
//debugger;
animate(this,0);
$("one").onmouseout = function() {
animate(this,-88);
}
};

$("two").onmouseover = function() {
//debugger;
animate(this,0);
$("two").onmouseout = function() {
animate(this,-88);
}
}

}
...全文
227 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2018-01-01
  • 打赏
  • 举报
回复

        function animate(obj,target) {
            var left = obj.offsetLeft;
            var speed = left > target ? -1 : 1;
            clearInterval(obj.timer);
            obj.timer = setInterval(function() {
                left = left + speed;
                obj.style.left = left + "px";
                if(left == target) {
                    clearInterval(obj.timer);
                }
            },1)
        }

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧