gpt4 book ai didi

javascript - 使用 eq() 淡入/淡出列表项

转载 作者:行者123 更新时间:2023-12-02 18:30:13 28 4
gpt4 key购买 nike

我有一组列表项,我想使用 eq() 对其进行 fadeIn() 和 fadeOut() 操作。我在发帖时也遇到了麻烦,如果我的代码看起来很糟糕,那么抱歉!

<ul id="skater_mulitivew">
<li class="first_gallery"></li>
<li class="second_gallery"></li>
<li class="third_gallery"></li>
<li class="fourth_gallery"></li>
</ul>

和我的 jQuery/JS :

<script>
$('.right_trigger').click(function(event) {
var i=0;
event.preventDefault();
while (i<5) {
$('#skater_mulitivew li').eq(0).fadeOut('slow');
$('#skater_mulitivew li').eq(1).fadeOut('slow');
i++;
};
});
</script>

它运行一次,但当我重新单击 .right_trigger 项目时,它不会再次运行。我想在每次点击时循环浏览每个列表项。感谢您的任何意见!

最佳答案

当前代码问题

<小时/>

i 具有全局范围,因此下次循环尝试迭代 i = 5,这会导致循环不迭代。将 i 的声明移至匿名函数中。

$('.right_trigger').click(function(event) { 
var i=0;
event.preventDefault();
while (i<5) {
$('#skater_mulitivew li').eq(0).fadeOut('slow');
$('#skater_mulitivew li').eq(1).fadeOut('slow');
i++;
});
});

当前代码的优化

<小时/>

顺便说一句,我不确定为什么您将 fadeOut() 函数称为 5x。您可以通过以下方式达到相同的效果:

$('.right_trigger').click(function(event) { 
event.preventDefault();
//If your trying to fadeout all li use the proceeding commented code
//$('#skater_mulitivew li").fadeOut("slow");

//If your actually trying to target by index use the proceeding code
$('#skater_mulitivew li:eq(0),#skater_mulitivew li:eq(1) ').fadeOut('slow');
i++;
});

轮播实现

<小时/>

鉴于评论,您似乎想要制作一个类似轮播的功能。这是实现这一目标的 html、css 和 javascript。

HTML

<ul id="skater_mulitivew">
<li class="first_gallery">Gallery 1</li>
<li class="second_gallery">Gallery 2</li>
<li class="third_gallery">Gallery 3</li>
<li class="fourth_gallery">Gallery 4</li>
</ul>
<div class="right_trigger">Trigger</div>

CSS

#skater_mulitivew li{
display:none;
}

#skater_mulitivew li:first-child{
display: block;
}

Javascript

   $('.right_trigger').click(function(event) { 
var items = $("#skater_mulitivew li");
toggle(items,0);
});

function toggle(items, index){

items.eq(index).fadeOut('slow', function(){
index = (index == items.length -1) ? -1:index;
items.eq(index + 1).fadeIn('slow', function(){

toggle(items, ++index);
});
});
}

工作示例: http://jsfiddle.net/njxnN/1/

关于javascript - 使用 eq() 淡入/淡出列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17869733/

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