作者lovelycateye (我還想要更多力量)
看板Ajax
標題[問題] 用js重播gif動畫
時間Wed Oct 27 22:24:59 2010
前不久碰到一個非常奇妙的需求。
就是我需要能夠讓一個非迴圈的gif(不會一直重播,撥完就停的)
能夠讓他在不重新reload頁面的情況下,透過js重新撥放一次。
目前試過了非常多的方法:
從最簡單的將圖片從網頁上移除再放到網頁上。
甚至將這個圖片new成一個image物件,再將他設成null等等。
各種奇怪的招數都用了,還是無法做到在各種瀏覽器都能夠重新播放。
想在這邊問問有沒有人有知道這種非常微妙的需求的解法?
因為這或許已經不單只是js的問題,還牽扯到各瀏覽器的實作和記憶體管理的問題。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.84.11.75
1F:→ dinos:在 .gif 後加上 ?d=...(timestamp)... 10/27 23:17
2F:→ lovelycateye:補充詳細情況好了,我必須預先將這個gif抓下來。 10/28 11:58
3F:→ lovelycateye:且為了減少流量,所以不能使用加query的方式。 10/28 11:58
4F:→ lovelycateye:因為client端的網路速度有點...慢? 10/28 11:59
5F:→ Kelunyang:你是寫script的,瀏覽器實作細節根本沒辦法碰... 10/28 21:51
6F:→ Kelunyang:IE會快取,就算設成null還是可能不會重新下載,而且你 10/28 21:51
7F:→ Kelunyang:不可能控制gif的載入/播放機制,所以只有重新下載 10/28 21:52
8F:→ Kelunyang:是最好的方法 10/28 21:52
9F:→ fillano:可以使用ajax的方式預載圖片,request過後沒有放在網頁上 10/29 15:29
10F:→ fillano:也還是會放進cache,所以有預載的效果 10/29 15:30
11F:→ lovelycateye:我現在的目的是1.透過預先下載的方式讓圖片cache 11/01 16:04