1
所以我有一個幾乎全高幻燈片此工作代碼:窗口大小調整和記錄準備
$(window).resize(function() {
var winHeight = $(window).height();
var headerHeight = $(".navbar").height();
$('#slideshow-wrapper, #slideshow, #slideshow .overlay, #slideshow #slogan-wrapper, #slideshow .overlay').height(winHeight - 145);
});
$(window).trigger('resize');
代碼工作,你可以看看這裏:
哪有爲了避免瀏覽器在計算#slideshow高度時做的初始閃爍,我將這些代碼包裝在文檔就緒函數中?
我已經試過:
$(document).ready(function() {
$(window).resize(function() {
var winHeight = $(window).height();
var headerHeight = $(".navbar").height();
$('#slideshow-wrapper, #slideshow, #slideshow .overlay, #slideshow #slogan-wrapper, #slideshow .overlay').height(winHeight - 145);
});
$(window).trigger('resize');
});
但閃爍不會消失。爲了重現問題,只需重新加載頁面,並檢查幻燈片顯示文本在居中之前如何「掛起」。
任何想法?
謝謝!
給你的容器一些最小高度 - 這將防止任何閃爍。它本質上是不可避免的,因爲JS在加載後立即執行,這意味着它可能會稍微延遲。只要確保在CSS中設置回退高度(例如,'80vh')即可。如果你設置'height'屬性,JS會覆蓋它。 – somethinghere
我認爲問題在於執行腳本時圖像無法加載。嘗試使用'$(window).on('load')'代替它,它將等待加載頁面中的所有資源以執行其中的代碼。 –
@somethinghere給容器一種修復問題的高度(它使得閃爍不那麼明顯)。事情是,這是有點難過,沒有解決這個問題。 – Johann