.leavesbg {
background: #f7fff7 url(/images/leaves4.png) repeat-y fixed 480px top;
}
因此,如果页面的宽度超过800px,我想将bg图像向右移动一半。也就是说,如果他们在1024x640中查看它,我想在宽度上添加112((1024-800)/ 2)(所以... fixed 592px top;
这是我的jquery试图移动它
function moveBG() {
var bgoffset =480;
var pagewidth = $('body').width();
if (pagewidth>800) {
bgoffset=pagewidth-bgoffset;
bgoffset=bgoffset/2;
}
$('.leavesbg').css(background-position: bgoffset +'px top');
}
$(document).ready(function(){
moveBG();
$(window).resize(moveBG);
});
我希望我只是忘记一些简单的事情,但我仍然相对较新的jQuery。
答案 0 :(得分:1)
bgoffset=bgoffset+'px top';
$('.leavesbg').css('background-position', bgoffset );
所以我做了一些原始的数学错误(但这与实际问题并不十分相关),但据我所知,我的代码中的实际错误是“改变css”行,我认为这很有效。可能有一个更好,更有效的方法,然后我上面的鹅卵石,所以我仍然欢迎如何更好地编码它的建议。 感谢。
答案 1 :(得分:0)
我用这个小提琴回答了类似的问题:
答案 2 :(得分:0)
很好,你在.css(attr,value)赋值中发现了语法错误。但是,如果您的pagewidet
< = 800,则背景位置为“480”,而不是“480px top;”我认为这就是你想要的。还要记住css的常见问题,如果你的元素'.leavesbg'在class属性后面有一个style属性,并且样式有'background-position',它就会胜出。