2012-02-14 181 views
1

我有一個不斷更新我的JavaScript的問題。我已經嘗試了大多數事情來確保瀏覽器不會緩存我的web應用程序,例如在src末尾使用變量,例如?v1等和html標記,但沒有任何效果。在html頁面中更新javascript並在更新後強制重新加載?

當我必須在html中更新我的javascript時,瀏覽器會自動緩存舊版本,並且新版本不會加載......任何提示?

你, 羅布

+0

你是否希望緩存你的腳本? – 2012-02-14 20:16:30

回答

1

你是你是在腳本分配一個不同的版本做的事情是正確的,這樣的瀏覽器,因爲它是使每個時間entirly不同的請求不能緩存的JavaScript。

例如:

<script type="text/javascript" src="/site-script.js?<?php echo time(); ?>"></script> 
<-- RENDERS --> 
<script type="text/javascript" src="/site-script.js?1234567890"></script> 
0

使用變量請求,只要你改變您的每一次變化的JavaScript字符串的腳本應該工作的時候。對於開發環境,我建議完全禁用瀏覽器緩存(例如,通過使用Firefox Web Developer插件可以在每頁基礎上完成)。另外整個頁面刷新(通常是CTRL + F5)也應該重新加載腳本文件。

+0

我發現的問題是用戶不知道ctrl + F5做了什麼(或者甚至存在)。今天我有一個案例,我的應用程序從index.html開始。爲了更新網站,我簡單地寫了一個簡單的html「這個網站正在更新」頁面,並將其命名爲index.html,並將其更名爲真正的應用程序index_.html。更新之後,人們開始問起爲什麼這麼長時間......他們只看到了緩存版本......它已經準備好了至少30分鐘。 – 2012-02-14 21:19:47

+0

在製作中,請求帶有版本號的文件應該可以正常工作,不會有任何問題。當然,你也必須改變index.html。它也取決於網絡服務器設置。 – Daff 2012-02-14 22:01:46

相關問題