2011-04-29 64 views
1

我已經創建了7個html頁面,下面的代碼用於引用並移動到後續頁面。我也添加了一些jquery淡入只是在頁面的一部分稱爲主。當網頁加載時,在它移動到下一頁之前淡出。我遇到的問題是,我沒有淡出的部分向上移動。有沒有辦法讓該部分不會退色?應用fadeIn和FadeOut的問題

$(document).ready(function() { 
    var intervalId = window.setInterval(fade_effect, 4000);  
    $("#main").css("display", "none").fadeIn("slow");   
    function fade_effect() {   
     $("#main").fadeOut("slow"); 
    } 

}); 

回答

2

我建議你淡出出來的地方不透明度是如此之低的點,它不能被人眼,吸血或以其他方式....好吧,我可能已經看到落水這一說法,但whatevs:

var fade_effect = function() {   
    $("#main").fadeTo("slow", 0.001); 
}; 

$(document).ready(function() { 
    var intervalId = window.setInterval(fade_effect, 4000);  
    $("#main").css("display", "none").fadeTo("slow", 1);  
}); 
+1

同意,這樣你會保持相同的高度。甚至可以嘗試fadeTo 0.001,因爲0.01仍然略微可見。 – wdm 2011-04-30 00:37:28

+0

啊。好。 *編輯答案*謝謝。 – mattsven 2011-04-30 00:55:55

0

您遇到由事實,一旦一個元素獲得一個display: none;屬性(在​​結束),瀏覽器會像對待造成的問題具有零高度,導致它下面的一切都跳起來。

因此,兩種解決方法浮現在腦海:你既可以與其他div具有相同height作爲包裹#maindiv#maindiv,使其保持佔據的空間,或者,你可以使用絕對定位以保持溫度低於無論是您的#maindiv處於相同位置。

希望這會有所幫助!