Javascript 需要Jquery在DIV中更改我的背景图像吗

Javascript 需要Jquery在DIV中更改我的背景图像吗,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我刚开始使用jquery,但我有我的想法,我有一个#SlidShow div,我只需要每3秒更改css属性(背景图像),我有4个图像,所以我的概念是((使用图像链接创建新数组))并每隔3秒用这个数组更改这个div的.css(背景图像) 我希望我的想法是正确的:),有人能帮我吗 #('SlideShow').css('background-image', (Array /* Cant handle it */)); 你已经得到答案了。只是想补充一点,如果这是您想要做的,那么jQuery有点过分了

我刚开始使用jquery,但我有我的想法,我有一个#SlidShow div,我只需要每3秒更改css属性(背景图像),我有4个图像,所以我的概念是((使用图像链接创建新数组))并每隔3秒用这个数组更改这个div的.css(背景图像)

我希望我的想法是正确的:),有人能帮我吗

#('SlideShow').css('background-image', (Array /* Cant handle it */));

你已经得到答案了。只是想补充一点,如果这是您想要做的,那么jQuery有点过分了,但可能不是

下面是一个纯javascript解决方案:

玩得开心

编辑

然而,对于注释中的第二个请求,要使图片褪色,jQuery可能更适合

以下是实现淡入效果的一种方法:


如果您希望图片褪色,jQuery可能更适合。用解决方案编辑了我的答案。它解决了你的问题吗?如果是,请接受答案:)
var array = ['url(a.png)', 'url(b.png)', 'url(c.png)', 'url(d.png)'];

var i = 0;
function setBackgroundImage() {
    $('#SlideShow').css('background-image', array[i]);
    i = i % array.length;
}
setBackgroundImage();
setInterval(setBackgroundImage, 3000);
var arr = ['http://placekitten.com/200/300','http://placekitten.com/200/301','http://placekitten.com/200/302'];

window.onload = function ()
{
    index = 0;
    var c = document.getElementById('cat');
    setInterval(function() {
        if(index > arr.length-1) {index = 0}
        c.style.backgroundImage='url(' + arr[index++] + ')';
    }, 3000);
}
var arr = ['http://placekitten.com/200/300','http://placekitten.com/200/301','http://placekitten.com/200/302'];

$(document).ready(function() {
    var c = $('#cat');
    fade = document.createElement('div');
    $(fade).attr('style','position: absolute; width:' + c.width() + 'px; height:' + c.height() + 'px;').attr('id','fade').hide();
    c.append(fade);

    var index = 0;
    setInterval(function () {
        $('#fade').css('background-image', 'url(' + arr[index] + ')').fadeIn(500,function() {
            c.css('background-image', 'url(' + arr[index++] + ')');        
            if(index > arr.length-1) {index = 0}
            $(this).hide();
        });
    }, 3000);
});