美文网首页
指定步长的匀速运动

指定步长的匀速运动

作者: 阿九是只大胖喵 | 来源:发表于2017-03-13 18:28 被阅读0次

    **问题: **
    当总距离/设定的步长 不是一个整数时,说明少走一步,还差点才能到,如果多走一步,会超出目标的位置。

    解决:
    在进行边界判断的时候加上步长来进行处理。

        var oBox = document.getElementById('box');
        var maxLeft = utils.win('clientWidth') - oBox.offsetWidth;
        var step = 5;
    
        var timer = window.setInterval(function () {
            var curLeft = utils.css(oBox, 'left');
    
            if (curLeft + step >= maxLeft) { // 边界判断: 加上步长计算
                utils.css(oBox, 'left', maxLeft);
                clearInterval(timer);
                return;
            }
    
            curLeft += step;
            utils.css(oBox, 'left', curLeft);
        }, 10);
    

    相关文章

      网友评论

          本文标题:指定步长的匀速运动

          本文链接:https://www.haomeiwen.com/subject/fxjqnttx.html