个人函数包



function getStyle(obj, attr) {   //获取对象的style值
return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle(obj)[attr]    //obj.currentStyle ? obj.currentStyle[attr] 判断是否 是标准浏览器
}


function move(obj, attr, dir, target, endFn) {   //移动函数
clearInterval(obj.timer);   //防止多次点击
dir = parseInt(getStyle(obj, attr)) < target ? dir : -dir  //判断该对象的style值的 正和负
obj.timer = setInterval(function() {
var speed = parseInt(getStyle(obj, attr)) + dir; //步长
if(speed > target && dir > 0 || speed < target && dir < 0) {  //方向判断
speed = target;
}


obj.style[attr] = speed + "px";   //赋值
if(speed == target) {
clearInterval(obj.timer);
if(endFn) {   //回调函数
endFn();
}
}
}, 30)
}


function shake(obj, attr, endFn) {   //抖动函数
var arr = [];
var num = 0;
if (!obj.onOff) {
obj.onOff = true;
for (var i = 20; i > 0; i--) {
arr.push(i, -i);
}
arr.push(0);
var pos = parseInt(getStyle(obj, attr));
obj.shakeTimer = setInterval(function () {
obj.style[attr] = pos + arr[num] + "px";
num++;
if (num == arr.length) {
clearInterval(timer);
obj.onOff = false;
if (endFn) {
endFn();
}
}
}, 30)
}
}

你可能感兴趣的:(个人函数包)