2011-08-18 75 views
0

您好我使用下面的代码来创建幻灯片与多个DIV元素:页向上滚动使用JQuery淡入 - 淡出

var $ = jQuery.noConflict(); 
function fadeContent() { 
    $(".slideshow .asset-abstract:first").fadeIn(500).delay(2000).fadeOut(500, function() { 
    $(this).appendTo($(this).parent()); 
    fadeContent(); 
    }); 
} 
fadeContent(); 

幻灯片正常工作,但有一个问题。当延迟(2000)触发fadeIn-fadeOut时,页面向上滚动!

我能做些什么来防止这种情况发生?

回答

0

它是因为fadeOut方法在元素上结束op设置display:none;

如果强制显示块在CSS中不会出现这种情况:

的CSS:

.slideshow .asset-abstract:first-child { 
    display:block; 
} 
+0

那么淡出的用途是什么? – ShankarSangoli

1

我认为当元素淡出它并不需要房地产在页面上。它下面的元素将取代它的位置,您感觉像滚动页面。您可以对正在尝试淡入/淡出的元素使用包装,并为此包装元素提供适当的高度。但这不是一个好的用户体验,因为当这个元素将会淡出时,页面上会出现空白部分。