0

我有一个 CSS 规则。

background: url(../images/banner1.jpg) no-repeat center center fixed; 

我怎样才能只改变图像的位置,而不是这一行的其他标签?

这是我正在谈论的当前 Jquery 行:

$('body').css({backgroundImage : 'url(' + newBg[i] + ')'});

在此代码中,图像的位置和所有内容都已加载。但是我怎么能这么说呢?

no-repeat center center fixed

需要在这个开始之后???

编辑: 由于 nnnnnn 的反应,这是完整的代码:

var newBg = ['img/banner1.jpg', 'img/banner2.jpg'];
var i = 0;
var rotateBg = setInterval(function(){
    i++;
    if ( i > 2 ) {
        i = 0;
    }
    $('body').css({backgroundImage : 'url(' + newBg[i] + ')'});
}, 6000);
4

3 回答 3

2

尝试这个

$('body').css('background', 'url(' + newBg[i] + ') no-repeat center center fixed');
于 2013-06-10T12:35:14.263 回答
0
$('body').css({
    'background-image' : 'url(' + newBg[i] + ')',
    'background-repeat': 'no-repeat',
    'background-position': 'center center',
    'background-attachment': 'fixed'
});
于 2013-06-10T12:34:04.187 回答
0
var currentCSS = $('body').css('background'),
    newBG = 'url(' + newBg[i] + ')',
    newCSS = currentCSS.replace(/url(.*)\)/gi, newBG);

$('body').css('background', newCSS);

或者只是更改背景图像,这不会更改其他背景属性

于 2013-06-10T12:34:38.443 回答