gpt4 book ai didi

jquery - 如何让这些图像在切换时停止 'flickering'?

转载 作者:行者123 更新时间:2023-12-01 06:51:53 24 4
gpt4 key购买 nike

我在使用 jQuery 图像旋转器时遇到了一些问题。当快速单击下一个/上一个按钮两次时,图像会闪烁,您最终会看到两个图像。关于如何修复它有什么想法吗?

这是 HTML

<div id="prev">
<img id="prevListing" class="prevListing" src="..." onmouseover="this.src='...'" onmouseout="this.src='...'">
</div>

<div class="faded">
<div id="fader">
<img src="...">
<img src="...">
</div>
</div>

<div id="next">
<img id="nextListing" class="nextListing" src="..." onmouseover="this.src='...'" onmouseout="this.src='...'">
</div>

CSS

.used {float:left; width:50%;}

.usedListingImage {width:65%;float:left; display:block; margin:-1% auto 0 auto; max-width:400px;}

#fader{display:block; width:95%;}

.nextListing {width:5%;float:right; margin:6% 5% 5% 5%;padding-right:5%;}

.prevListing {width:5%;float:left; margin:7% 5% 5% 5%; }

和 jQuery

<script type="text/javascript">
jQuery (function() {
$('#fader img:not(:first)').hide();

$('#fader img').each(function() {
var img = $(this);
$('<img>').attr('src', $(this).attr('src')).load(function() {
img.css('margin-left', -'0');
});
});

var pause = false;

function fadeNext() {
$('#fader img').first().fadeOut().appendTo($('#fader'));
$('#fader img').first().fadeIn();
}

function fadePrev() {
$('#fader img').first().fadeOut();
$('#fader img').last().prependTo($('#fader')).fadeIn();
}

$('#fader, #next').click(function() {
fadeNext();
});

$('#prev').click(function() {
fadePrev();
});

$('#fader, .button').hover(function() {
pause = true;
},function() {
pause = false;
});

function doRotate() {
if(!pause) {
fadeNext();
}
}

var rotate = setInterval(doRotate, 5000);

});

</script>

有什么想法可以在图像切换时停止闪烁吗?

最佳答案

您当前的 css 中有 float:left;。当您同时运行 fadeInfadeOut 时,两个元素都可见并且在空间中,但没有足够的空间,因此另一个图像会落在第一个图像下方。您应该对它们使用 position:absolute; 以便它们可以存在于同一空间中。然后我只需将 z-index 更改为淡入图像上的图像,这样它就位于顶部,并且不用担心旧图像淡出,只需 hide() 它位于另一个图像之后已完成淡入。

关于jquery - 如何让这些图像在切换时停止 'flickering'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13753054/

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