2013-08-22 68 views
0
之間產生白色閃光

我有一個頁面應用程序,每個頁面都設置爲顯示:無。toggleClass切換頁面可在

顯示頁面,我一類添加到他們:

.current-page{ 
    display:block; 
} 

所以切換頁面,我只是toggleClass(「當前頁」)我現在的頁與頁之間我想切換到:

$('.current-page, #'+desiredPage).toggleClass('current-page') 

然而,這似乎並沒有立刻發生,我得到頁之間一道白光閃過,彷彿有之間的一個頁面被隱藏,另一個顯示一秒鐘的延遲。

什麼是最好的方法來解決這個問題?有沒有更好的方法來切換頁面?

+2

你使用AJAX動態加載它們?你能告訴我們一個jsfiddle嗎? – Alvaro

+0

淡入淡出新頁面,淡入淡出舊頁面,只是將顯示切換爲無或塊會給你突然閃爍。 –

+0

我正在使用ajax將內容加載到新頁面中,然後在內容已被觸發後切換頁面 – rpsep2

回答

2

相反切換的display財產堆棧上互相利用的z-index的上方顯示出所需頁面的所有頁面:

.page { 
    z-index: 1; 
} 

.page.current-page { 
    z-index: 2; 
} 

See this demo

+0

這會停止閃爍,但是position:absolute會停止滾動頁面? – rpsep2

+0

取決於您的DOM結構和應用的CSS規則,您可能需要更改一些內容。也許這些網頁容器是一個很好的開始。例如,當您將「position:absolute」賦予「.page」元素時,其父元素的高度會減小。 – letiagoalves

+0

必須改變相當多的其他CSS/JS這個工作,但現在沒有頁面之間閃爍,希望我從一開始就使用這種方法!謝謝 – rpsep2

0
$('.current-page').toggleClass('current-page'); 
$('#'+desiredPage).hide().toggleClass('current-page').fadeIn(); 

可能是你要找的那種東西?