[問題] 用js重播gif動畫

看板Ajax作者 (我還想要更多力量)時間15年前 (2010/10/27 22:25), 編輯推噓0(0011)
留言11則, 4人參與, 最新討論串1/1
前不久碰到一個非常奇妙的需求。 就是我需要能夠讓一個非迴圈的gif(不會一直重播,撥完就停的) 能夠讓他在不重新reload頁面的情況下,透過js重新撥放一次。 目前試過了非常多的方法: 從最簡單的將圖片從網頁上移除再放到網頁上。 甚至將這個圖片new成一個image物件,再將他設成null等等。 各種奇怪的招數都用了,還是無法做到在各種瀏覽器都能夠重新播放。 想在這邊問問有沒有人有知道這種非常微妙的需求的解法? 因為這或許已經不單只是js的問題,還牽扯到各瀏覽器的實作和記憶體管理的問題。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.84.11.75

10/27 23:17, , 1F
在 .gif 後加上 ?d=...(timestamp)...
10/27 23:17, 1F

10/28 11:58, , 2F
補充詳細情況好了,我必須預先將這個gif抓下來。
10/28 11:58, 2F

10/28 11:58, , 3F
且為了減少流量,所以不能使用加query的方式。
10/28 11:58, 3F

10/28 11:59, , 4F
因為client端的網路速度有點...慢?
10/28 11:59, 4F

10/28 21:51, , 5F
你是寫script的,瀏覽器實作細節根本沒辦法碰...
10/28 21:51, 5F

10/28 21:51, , 6F
IE會快取,就算設成null還是可能不會重新下載,而且你
10/28 21:51, 6F

10/28 21:52, , 7F
不可能控制gif的載入/播放機制,所以只有重新下載
10/28 21:52, 7F

10/28 21:52, , 8F
是最好的方法
10/28 21:52, 8F

10/29 15:29, , 9F
可以使用ajax的方式預載圖片,request過後沒有放在網頁上
10/29 15:29, 9F

10/29 15:30, , 10F
也還是會放進cache,所以有預載的效果
10/29 15:30, 10F

11/01 16:04, , 11F
我現在的目的是1.透過預先下載的方式讓圖片cache
11/01 16:04, 11F
文章代碼(AID): #1Co3OzEL (Ajax)
文章代碼(AID): #1Co3OzEL (Ajax)