在尝试升级 jQuery 插件“iCheckbox”(http://stackoverflow.com/questions/6032538/)以在 jQuery 1.4.4 之上工作时,我发现使用
animate({backgroundPosition:'10px 0px'})
需要改为
animate({backgroundPositionX: '10px', backgroundPositionY: '0px'})
因为只应使用具有一个参数的属性。到目前为止,这是有道理的,但是等等……虽然它在 Safari 和 Chrome 中运行良好,但在 FF4 中却无法运行(全部在 Mac 上)。
所以我尝试了这个和那个,最后发现如果我把它改成
animate({backgroundPosition: '10px'})
它无处不在!但是这里发生了什么?现在我只给出一个参数,它可以工作,但我没有指定它是用于 X 轴还是 Y 轴(所以它似乎默认为 X 轴。但是如果我希望它在 Y 轴上工作呢?)
这看起来很奇怪,我的解决方案不是正确的方法。所以我需要一些建议:
这是怎么回事?
应该如何使用 jQuery 1.4 - 1.6 对背景位置进行动画处理,以便它可以跨浏览器工作?