尝试使用我自己的自动收报机,并且已经没有JQuery知识了。元素应该淡出,然后下一个元素淡入。此时第一个元素淡出,而第二个和第三个元素一起淡入,它们没有循环。显然我错过了一些东西。
<script type="text/javascript">
var elem1 = $('#fader').children();
$(elem1).hide();
$(elem1).first().fadeIn(2000,function(){
$(elem1).delay(4000);
$(elem1).fadeOut(2000, function(){
$(elem1).next().fadeIn(2000);
});
}); </script>
有什么想法吗?
非凡
答案 0 :(得分:0)
我认为这是你的选择。 $(elem1)
指的是$('#fader')
的所有子项,因此$(elem1).next()
最终将引用所有可能的“next”,在这种情况下,第一个和第二个元素具有“ next是“,分别是第二和第三个元素。
你想要做的是以某种方式跟踪哪个元素是当前显示的元素,然后在它的时间,淡出那个元素和下一个元素。
答案 1 :(得分:0)
好吧,我制作了一个简单的修补程序,滚动所有值并停止。也许这就是你正在寻找的东西,或者至少可以帮助你建立自己的东西。 ;) 这是HTML代码:
<div id="fader" style="width:100px; height:100px; background-color:blue;">
<p>aaaaaaaaaaaa</p>
<p>bbbbbbbbbbbb</p>
<p>cccccccccccc</p>
<p style="display:none;">dddddddddddd</p>
<p style="display:none;">eeeeeeeeeeee</p>
<p style="display:none;">ffffffffffff</p>
<p style="display:none;">gggggggggggg</p>
</div>
脚本本身:
<script type="text/javascript">
$(document).ready(function()
{
var timer = window.setInterval(function()
{
var elem1 = $('#fader').children(':visible:first');
var elem2 = $('#fader').children(':visible:last');
if( !$(elem2).next().is(':last') )
clearInterval( timer );
else
{
$(elem1).fadeOut(1500, function()
{
$(elem2).next().fadeIn(1500);
});
}
}, 3000);
});
</script>
祝你好运! ; d