0
我遇到問題,連接速度慢的用戶無法正確獲取圖像Feed。網絡攝像頭流式傳輸 - 以可變間隔將圖像流式傳輸到圖像控制系統?
我每秒向Ajax更新面板中的圖片框發送新圖片,使用Ajax計時器。
所以如果他們的速度實在太慢,一個圖像犯規負載下一個進來前充分,所以他們從來沒有得到整個畫面......
任何想法?
我遇到問題,連接速度慢的用戶無法正確獲取圖像Feed。網絡攝像頭流式傳輸 - 以可變間隔將圖像流式傳輸到圖像控制系統?
我每秒向Ajax更新面板中的圖片框發送新圖片,使用Ajax計時器。
所以如果他們的速度實在太慢,一個圖像犯規負載下一個進來前充分,所以他們從來沒有得到整個畫面......
任何想法?
在JavaScript中使用圖像OnLoad事件。換句話說,在最後一個沒有完全加載之前,不要加載新的圖像。
也許你不應該使用更新面板。圖片標籤(包括其大小,外觀和位置)保持不變;它是變化的來源。而不是更新的一切,我建議做以下在客戶端:
OnLoad
事件的監聽程序添加到<img />
。Camera.aspx
,該頁面服務於從相機抓取的最新照片。可以肯定的頁面確實是查詢,<img />
元素的src
屬性更改爲Camera.aspx?t=1
,Camera.aspx?t=2
等在服務器端(所以沒有JavaScript在這裏會),所抓取的圖像存儲在數據庫中,因此Camera.aspx
將查詢最後存儲的記錄,檢索它並直接發送給客戶端(指定適當的Response.ContentType
和使用Response.OutputStream
)。
爲了獲得更好的視覺反應,您可能還需要考慮並行使用兩個圖像元素:第一個加載時,顯示第二個,反之亦然。它可能會更好,但我不確定,所以在選擇合適的方法之前進行測試。
這聽起來像個好主意!雖然我對JavaScript沒有太多瞭解,但是如何在OnLoad事件中從數據庫獲取下一個圖像url? – 2010-07-22 02:57:57
@Faizan Kazi:查看修改後的答案。最好的祝福。 – 2010-07-22 04:15:32
謝謝!!我很抱歉遲到的迴應,但你的答案是非常完美的..我剛剛得到一個小細節清理...我如何將圖像從Camera.aspx分配給圖像?這有點像網絡服務嗎? – 2010-11-22 04:41:30