Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript DIV-备用背景图像_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript DIV-备用背景图像

Javascript DIV-备用背景图像,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我不想实现滑块插件,而是想使用CSS/jquery替换DIV的背景图像(fadein/fadeout或幻灯片效果)。 目前我的代码如下: HTML 我应该怎么做才能将图片1替换为第二张图片? 非常感谢您的帮助尝试使用偶数和奇数选择器 .block:nth-child(odd) { background-image: height: 638px; background-image: url(../images/picture1.jpg); background-size:

我不想实现滑块插件,而是想使用CSS/jquery替换DIV的背景图像(fadein/fadeout或幻灯片效果)。 目前我的代码如下:

HTML

我应该怎么做才能将图片1替换为第二张图片?
非常感谢您的帮助

尝试使用偶数和奇数选择器

    .block:nth-child(odd) {
background-image:
 height: 638px;
    background-image: url(../images/picture1.jpg);
    background-size: cover;
}

.block:nth-child(even) {
background-image:
 height: 638px;
    background-image: url(../images/pictureNew.jpg);
    background-size: cover;
}

尝试使用偶数和奇数选择器

    .block:nth-child(odd) {
background-image:
 height: 638px;
    background-image: url(../images/picture1.jpg);
    background-size: cover;
}

.block:nth-child(even) {
background-image:
 height: 638px;
    background-image: url(../images/pictureNew.jpg);
    background-size: cover;
}

使用jQuery淡出元素,然后更改其
背景图像
属性,然后再次淡入:

$('.block').fadeOut(300, function(){

  $(this).css('background-image', 'url(path/to/other/image.jpg)')

  $(this).fadeIn(300);

});
如果您想要一个类似幻灯片的动画循环,请使用JavaScript
setInterval
方法让代码在一定的毫秒数后重复:

var images = [

  'path/to/image1.jpg',
  'path/to/image2.jpg',
  'path/to/image3.jpg'

];

var index = 0;

setInterval(change_up, 1000);

function change_up(){

  index = (index + 1 < images.length) ? index + 1 : 0;

  $('.block').fadeOut(300, function(){

    $(this).css('background-image', 'url('+ images[index] + ')')

    $(this).fadeIn(300);

  });
}
var图像=[
'path/to/image1.jpg',
'path/to/image2.jpg',
'path/to/image3.jpg'
];
var指数=0;
设置间隔(向上更改,1000);
函数更改_up(){
索引=(索引+1

这里有一个

使用jQuery淡出元素,然后更改其
背景图像
属性,然后再次淡入:

$('.block').fadeOut(300, function(){

  $(this).css('background-image', 'url(path/to/other/image.jpg)')

  $(this).fadeIn(300);

});
如果您想要一个类似幻灯片的动画循环,请使用JavaScript
setInterval
方法让代码在一定的毫秒数后重复:

var images = [

  'path/to/image1.jpg',
  'path/to/image2.jpg',
  'path/to/image3.jpg'

];

var index = 0;

setInterval(change_up, 1000);

function change_up(){

  index = (index + 1 < images.length) ? index + 1 : 0;

  $('.block').fadeOut(300, function(){

    $(this).css('background-image', 'url('+ images[index] + ')')

    $(this).fadeIn(300);

  });
}
var图像=[
'path/to/image1.jpg',
'path/to/image2.jpg',
'path/to/image3.jpg'
];
var指数=0;
设置间隔(向上更改,1000);
函数更改_up(){
索引=(索引+1

这里有一个

有一个核心滑块类

.slider{
   opacity:1
   -webkit-transition:opacity 500ms;
   -moz-transition:opacity 500ms;
   -ms-transition:opacity 500ms;
   transition:opacity 500ms;
}

.hideSlide{
   opacity:0
}
这将导致不透明度的褪色。然后,您可以使用“隐藏幻灯片”类更改不透明度,并在其透明时更改背景图像。然后删除隐藏幻灯片类,它将淡入


或者,你也可以将一束div放在另一束div的上面,逐渐变长为500ms、1000ms、1500ms等,使它们暴露在观众面前。

有一个核心滑块类

.slider{
   opacity:1
   -webkit-transition:opacity 500ms;
   -moz-transition:opacity 500ms;
   -ms-transition:opacity 500ms;
   transition:opacity 500ms;
}

.hideSlide{
   opacity:0
}
这将导致不透明度的褪色。然后,您可以使用“隐藏幻灯片”类更改不透明度,并在其透明时更改背景图像。然后删除隐藏幻灯片类,它将淡入


或者,你可以将一束div放在另一束div的上面,以500毫秒、1000毫秒、1500毫秒等递增的长度逐渐淡出,以便将它们暴露给观众。

好的一点,编辑了代码。谢谢你,我已经编辑了代码。谢谢沈南。其实我应该说得更具体一点。我已经相应地更新了我的问题,并尝试应用代码(我将“.block”替换为“.backpic”,但没有成功。你知道为什么吗?许多感谢留言是因为你需要使用与背景图像CSS相同的语法。特别是
url()
指令。更新了代码并提供了一把小提琴。谢谢Shennan。看着你的JSFIDLE,图像只淡入/淡出1x。是否有可能不断淡入/淡出以产生一种“滑块”"效应Thanks@Greg我觉得这可能有点超出了这个问题的范围,但我已经用一些代码更新了我的答案,这些代码可以满足您的要求。请看小提琴的例子。太好了!非常感谢您的帮助!谢谢沈南。实际上我应该更具体一点。我已经相应地更新了我的问题,我可以ied应用了你的代码(我将“.block”替换为“.backpic”,但没有成功。你知道为什么吗?许多感谢者说,因为你需要对背景图像使用与CSS相同的语法。特别是
url()
指令。更新了代码并提供了一把小提琴。谢谢Shennan。看着你的JSFIDLE,图像只淡入/淡出1x。是否有可能不断淡入/淡出以产生一种“滑块”"效应Thanks@Greg我觉得这可能有点超出了这个问题的范围,但我已经用一些代码更新了我的答案,这些代码可以满足您的要求。请看fiddle的例子。太好了!非常感谢您的帮助!谢谢Brandon。但是我不确定如何实现这一点?html代码会是什么样子?您会在哪里设置100%宽度和背景大小:封面?谢谢你的html看起来像这样,或者你的所有CSS都会进入slider类。hideSlide类唯一能做的就是隐藏幻灯片。谢谢Brandon。但是不知道如何实现它?html代码看起来像什么?你在哪里设置100%宽度背景尺寸:封面?谢谢你的html看起来像这样,或者你所有的CSS都会进入slider类。hideSlide类唯一能做的就是隐藏幻灯片。