鹏仔_fox 2021-07-05 12:46 采纳率: 0%
浏览 94

详细讲解一下里面的代码,这是一个js的缩放

var imgs = document.getElementsByClassName("i");
for (var i = 0; i < imgs.length; i++) {
imgs[i].onmouseover = function () {
startMov(this, { width: 150, height: 200, top: 0, left: 0 });
}

imgs[i].onmouseout = function () {
    startMov(this, { width: 200, height: 450, top: -16, left: -150 });
}
//设置图像计时器为空值
imgs[i].timer = null;

}
function startMov(element, styles) {
clearInterval(element.timer);
element.timer = setInterval(function () {
for (var attr in styles) {
var icur = 0;
if (attr == 'width') {
icur = Math.round(parseFloat(getStyle(element, attr)) * 100);
} else{
icur = parseInt(getStyle(element, attr));
}

        var speed = 0;
        speed = (styles[attr] - icur) / 8;
        speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
        if (attr == 'width') {
            element.style.width = (icur + speed) / 100;
        } else {
            element.style[attr] = icur + speed + 'px';
        }
    }
}, 30);

}
function getStyle(obj, attr) {
if (obj.currentStyle) {
return obj.currentStyle[attr]; //仅限IE兼容
} else {
return getComputedStyle(obj, false)[attr]; //兼容FF
}
}

  • 写回答

1条回答 默认 最新

  • weixin_41950674 2023-02-01 18:02
    关注

    哪块看不懂

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器