簡體   English   中英

在另一個腳本之前等待完全加載的腳本的正確方法是什么

[英]What is the proper way to wait a script loaded completely before another

我正在制作一個由幾個部分划分的網站

<div id='section-1' class='section'>web content</div>
<div id='section-2' class='section'>web content</div>

我的網頁上有十個部分,當 javascript 准備好文檔時,每個部分的高度都設置為用戶窗口高度

$('.section').height($(window).height());

我的網頁上的某些效果(如幻燈片)需要計算出該部分的高度才能正常工作。 因此,我總是在准備好文檔時使用類似的方法作為解決方案。

setTimeout(startslideshow,1000);
setTimeout(startanimations,1000); ...etc  

在幻燈片代碼開始之前確保節高度是用戶窗口高度,因為一旦加載網頁,節就不能立即更改為用戶窗口高度,這將在我的幻燈片代碼中產生嚴重問題,例如錯誤的計算位置。

因此會有一種情況,在頁面加載后,大約一秒鍾一切都搞砸了,在一切都可以正常工作之前,我怎么能避免被用戶看到呢? 我嘗試$(document).hide()$('html,body').hide() ,然后在一秒鍾后淡入,但我遇到了其他奇怪的問題,尤其是在 ipad 上,我的固定位置頂部導航欄用戶滾動時將始終變為“不固定”。

由於我是自學者,我擔心我的方法不典型。 我想知道真正的web程序員在將他的網頁分成不同的部分並將其高度設置為窗口高度時通常會采取什么方式,然后確保取決於部分高度的其他效果正常工作並避免等一下高度變化?

您應該查看鏈接異步調用。

不推薦依賴計時器,因為腳本在不同的瀏覽器、硬件等上可能以不同的速度執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM