gpt4 book ai didi

javascript - 滚动浏览图片

转载 作者:太空宇宙 更新时间:2023-11-04 03:48:52 25 4
gpt4 key购买 nike

你好,Stackoverflow。我的网站有一份小工作,我无法自己弄清楚。

我在右边有一个盒子,我想要所有的赞助商,但我不想把盒子做得很长,我只想要一个简单的“幻灯片”,它会淡入图片中,停留 3 秒,然后它消失在另一张照片中。它们中的大多数将是 90x90,但有些尺寸可能不同,这不应该搞砸。

我有一张图片演示,如果你没有从我糟糕的英语中理解这个概念。 http://imgur.com/oPausP2

1=赞助商图片。在此框中,它应该在不同赞助商之间滑动。

提前致谢!

最佳答案

我在 my company's home page 上使用它.这是一个 codepen为了它。我喜欢尽可能使用 CSS 并尽量减少 javascript。

DOM:

<div class="slides_container">
<div class="slide"><img src="img1.jpg"></div>
<div class="slide"><img src="img2.jpg"></div>
<div class="slide"><img src="img3.jpg"></div>
<div class="slide"><img src="img4.jpg"></div>
<div class="slide"><img src="img5.jpg"></div>
</div>

CSS:使用transition 属性淡入淡出。 (请记住,您需要在 transition 上使用 vendor 前缀才能使用各种浏览器。)

.slides_container {
height:90px;
width:90px;
overflow:hidden;
position:relative;
}
.slides_container .slide {
position:absolute;
visibility:hidden;
opacity:0;
transition:opacity 1s ease, visibility 0s ease 1s;
}
.slides_container .slide.active {
visibility:visible;
opacity:1;
transition:opacity 1s ease;
}

Javascript:这可以在没有 jQuery 的情况下完成,但我将在这里使用它:

jQuery(document).ready(function($){
/*make sure the first element shows up*/
$('.slides_container .slide:first-child').addClass("active");
var active_slide = 0,
dom_slides = $('.slides_container .slide'),
num_slides = dom_slides.length,
myInterval = setInterval(function(){
if(active_slide>(num_slides*5+1))
clearInterval(myInterval);
changeSlide(++active_slide);
},6000);
function changeSlide(slide) {
if((slide = slide%num_slides)<0) slide+=num_slides;
dom_slides.removeClass('active').eq(slide).addClass('active');
}
});

(在我的代码中,我添加了 if(active_slide>(num_slides*5+1)) clearInterval(myInterval); 这只会在 5 个周期后停止旋转 - 所以它不会永远运行。如果你希望它是无限的,你可以只删除这两行。)

好的,解释:

CSS 将应用 visibility:hidden; opacity:0; 到所有 .slide DOM 元素。在 .active 状态下,不透明度从 0 过渡到 1,持续 1 秒(transition:opacity 1s ease;)。请记住,当 .active 状态消失时,您需要将 visibility 延迟 1 秒,以便 opacity 可以转换,因此 visibility 为 0s缓动 1s;.

在Javascript中,num_slides会统计.slide DOM元素的个数;该变量稍后将与 modulo (%) 一起使用: slide % num_slides 返回从 0 到幻灯片数量减 1 的整数。稍后我们将使用 jQuery 的 .eq() 方法依次选择每个 DOM 元素并将 .active 类应用于它。

关于javascript - 滚动浏览图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23688400/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com