問題:上傳一張圖片,通過js更新src屬性刷新圖片使其即時顯示時,當img的src當前的url與上次地址無變化時(只更改圖片,名稱不變,不同圖片名稱相同)圖片不變化(仍顯示原來的圖片)但通過firebug看圖片已經變化,因為當src的地址不變時瀏覽器不會重新加載圖片仍從緩存里面讀取
方法:只需每次刷新圖片時,改變一下src的地址內容就行了,(1)通過前台變化,讓js每次生成一個隨機數作參數放在url后邊,但該參數沒有實際意義(2)每次請求到該圖片頁面時,從后台傳一個隨機數,前台獲得該隨機變量並放在url后邊,該隨機數也沒有什么實際意義
原理:
由於在img的src中增加了隨機數參數,多次訪問圖片時,瀏覽器認為是訪問了不同的圖片路徑(或者說是訪問了不同的圖片),瀏覽器會每次重新訪問服務器讀取圖片,而不再讀取緩存中的圖片。