32 lines
1.1 KiB
JavaScript
32 lines
1.1 KiB
JavaScript
function animate(obj, target, callback) { // 盒子移动函数
|
|
clearInterval(obj.timer);
|
|
obj.timer = setInterval(move, 20);
|
|
function move() {
|
|
var step = (target - obj.offsetLeft) / 10;
|
|
step = step > 0 ? Math.ceil(step) : Math.floor(step)
|
|
obj.style.left = obj.offsetLeft + step + 'px';
|
|
// obj.style.left = target + 'px'; // 闪变
|
|
if (obj.offsetLeft == target) {
|
|
clearInterval(obj.timer);
|
|
if (callback) {
|
|
callback();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
function animateY(obj, target, callback) { // 盒子移动函数
|
|
clearInterval(obj.timer);
|
|
obj.timer = setInterval(move, 10);
|
|
function move() {
|
|
var step = (target - window.pageYOffset) / 10;
|
|
step = step > 0 ? Math.ceil(step) : Math.floor(step)
|
|
// obj.style.left = target + 'px'; // 闪变
|
|
if (window.pageYOffset == target) {
|
|
clearInterval(obj.timer);
|
|
callback && callback();
|
|
}
|
|
// window.pageYOffset = window.pageYOffset + step + 'px';
|
|
window.scroll(0, window.pageYOffset + step) // 不加单位
|
|
}
|
|
} |