Javascript DIV-备用背景图像
我不想实现滑块插件,而是想使用CSS/jquery替换DIV的背景图像(fadein/fadeout或幻灯片效果)。 目前我的代码如下: HTML 我应该怎么做才能将图片1替换为第二张图片?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:
非常感谢您的帮助尝试使用偶数和奇数选择器
.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);
});
如果您想要一个类似幻灯片的动画循环,请使用JavaScriptsetInterval
方法让代码在一定的毫秒数后重复:
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);
});
如果您想要一个类似幻灯片的动画循环,请使用JavaScriptsetInterval
方法让代码在一定的毫秒数后重复:
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类唯一能做的就是隐藏幻灯片。