我认为我的最后一个问题压倒了所有人,所以我会简化
我试图仅改变x轴的背景位置。默认情况下,如果只定义了一个值,则另一个默认为50%
,因此该函数:
function colorChangePiano() {
var bp = $("background-position").css;
$("#target").css('background-position', (bp == -1131) ? '-377' : '0');
}
返回背景位置:0 50%
;
如何修改函数以更改x轴但保持y轴不变?
已编辑 - >这是一个4列4行的精灵,因此y轴应保持动态。工作网站:http://www.avalonbyeaw.com点击“完成”。我们在现场网站上使用了一些疯狂复杂的脚本,但我还是会把它留在这里,因为我仍然真的想找到解决这个问题的方法
答案 0 :(得分:5)
我将如何做到这一点。
$('#target').css('background-position', function(i, backgroundPosition) {
return backgroundPosition.replace(/\d+px/, '60px');
});
答案 1 :(得分:2)
将2个值添加到background-position
(正如预期的那样)。同时将当前位置保存在变量中,这样可以更容易。
var pos = -377;
var colorChangePiano = function() {
if (pos == -377) {
pos = -1131
}
else {
pos = -377
}
$('#target').css({
'backround-position': pos + 'px 0px' // will result in "Xpx 0px"
});
}