代码拉取完成,页面将自动刷新
function move(ele,speed, json, callback) {
clearInterval(ele.time);
ele.time = setInterval(() => {
var tag = true;//定时器开关
for (var attr in json) {
var target = json[attr];
if (attr === 'opacity') {
var now = getstyle(ele, 'opacity') * 100;//获取当前位置 parseInt()转为整数 getstyle()
} else {
var now = parseInt(getstyle(ele, attr));//获取当前位置 parseInt()转为整数 getstyle()
}
// var dir = (target - now) / 10;// 缓动效果
var dir = (target - now) > 0 ? speed : -speed;// 正常效果
dir = dir > 0 ? Math.ceil(dir) : Math.floor(dir); //dir 大于0向上取整 否则向下取整
now += dir; //前进或后退
if ((now >= target && dir > 0) || (now <= target && dir < 0)) {//判断是否到边界
now = target;
}
if (attr === 'opacity') {
ele.style.opacity = now / 100;//改变元素的位置
ele.style.filte = 'alpha(opacity=' + now + ')';//改变元素的位置
} else {
ele.style[attr] = now + 'px';//改变元素的位置
}
if (now !== target) {
tag = false;
}
}
if (tag) {
clearInterval(ele.time);
callback && callback();
}
}, 30);
}
function getstyle(ele, attr) {
if (window.getComputedStyle)
return window.getComputedStyle(ele)[attr];
else return ele.currentStyle[attr];
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。