![](/img/trans.png)
[英]What's the most efficient way of loading and later referencing texture tiles in javascript?
[英]What's the easiest / most efficient way to pause setInterval while data is loading? JavaScript/Jquery
所以我有一個JS間隔在腳本上執行加載命令..並在div上顯示加載的數據。
一切都很完美,直到我將項目放到網上並看到一個問題(在后台)。
由於需要將setInterval設置為1秒間隔,並且很多時候數據加載所需的時間超過1秒,因此我看到后台正在發生加載堆棧...因為setInterval繼續觸發$ .load()每秒調用一次,而不管是否加載了任何數據。
我當時正在考慮設置一個全局變量“ is_loading”,以便在該間隔中添加到我的函數中,如果“ is_loading”為true,則跳過例程的其余部分,..一旦最近的加載調用完成,它將設置is_loading = false。
這樣間隔就保持觸發/第二個沒有負載的調用在后台堆疊...
但是,由於我在整個頁面上有幾個時間間隔在做負載(請不要問為什么哈哈),我發現每個時間間隔都這樣做很麻煩。.因此,我想知道有什么事情可以像事件一樣“全局”地進行當前頁面上當前未完成的加載/獲取/發布的某種偵聽器?
建議會很棒
就像其他人說的那樣,只要請求完成,我都會使用setTimeout
發出新請求。
為了處理計時器上的多個請求,我建議制作某種主計時器/計划程序,以減少遍歷運行的setTimeouts的數量。 當我做類似的事情時,谷歌的這篇文章對我很有幫助:
http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html
這里有一些很棒的建議(和提醒),但是我要做的是創建自己的setInterval函數,該函數可以執行我想做的事情。
myInterval(function,time,hold_variable,attempts)其中,hold_variable = window.variable在執行實際功能之前已發出並檢查。 這是相同的變量名,我的函數在完成時將設置回0,並允許再次調用自身
trys =可選變量,由於hold_variable,間隔嘗試調用該函數失敗的次數。
在setInterval方面,這是一個非常簡單的解決方案。.唯一的不便之處是我的函數需要“設置”它們的每個hold_variables(每個函數的微小修改)...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.