我今天遇到了一个(错误?)最新版本的 jQuery,我的递归循环动画背景位置不再起作用。请看这个例子:
(这适用于 1.9 版) http://codepen.io/bonpixel/pen/qLkgt
删除 cdn jquery 并使用 codepen bootstrap jquery(版本 1.10.0),它不再循环。我在 jquery 2.0.1 中看到了相同的结果。似乎这是我用于背景定位的 -= 或 += 的具体问题?就好像用于计算新位置的值在动画之后(或期间)没有更新。
有什么想法吗?
(编辑添加静态代码)
HTML
<div class="blue"><div>
CSS
.blue{
width: 100px;
height: 190px;
background: transparent;url(http://2.bp.blogspot.com/-6xJXVFMdC64/TckciX_eI7I/AAAAAAAAAEc/IYORj5mZXiY/s1600/wlk01.gif) 0 0 repeat-x;
}
JS
var backgroundSlidingLeft = function () {
$('.blue').animate({
'background-position-x': '-=100px',
'background-position-y': '0px'
}, 1000, 'linear', backgroundSlidingLeft);
};
backgroundSlidingLeft();