javascript檔案在IE緩衝中的迷惑與解惑實驗

來源:互聯網
上載者:User

緩衝迷惑:
項目中用到了股票代號的輸入框,想使用經典ajax效果——自動完成。

可是與頭頭討論時,頭頭覺得一輸入字元就要伺服器相應,而且預計的使用人數有點大的情況下,太耗伺服器資源了。
說服不了頭頭,只有採用變通的方式,把代碼錶放到js裡,使用純js實現自動完成功能。頭頭勉強接受。

網上搜尋了一圈,發現不少比較好的使用例子,例如:
http://www.javascript-examples.com/autocomplete-demo/

有個疑惑的地方,使用者開啟頁面時,代碼錶js下載到了本機快取,如果第二天代碼錶js內容變了的話,頁面開啟時,IE會讀取緩衝裡的那個js檔案,還是下載新的這個呢?
但是如果禁止了用戶端緩衝的話,一天內多次開啟此頁面會不會每次重新下載,給使用者的感覺又很慢呢?

傳言:
聽到一個傳言,說ie開啟網頁時會自動檢查那個js檔案的發布時間,如果與緩衝裡不一致,就會下載新的。是否有這個說法啊?

解惑實驗:
經過自己的測試,好像那個傳言是真的。
做了一下測試,用iis建了一個普通網站,讓頁面內嵌入使用了一個js。
同時開啟ie緩衝路徑進行檔案監視

測試1:ie首次開啟網頁時,js被down到快取檔案夾。上次修改時間、上次訪問時間、上次檢查時間,這三個屬性的值是一致的。

測試2:隔了一分鐘,更改了js檔案,ie再此開啟這個網頁,檢查到上次修改時間、上次訪問時間、上次檢查時間,這三個屬性的值又是一致的。

測試3:再隔了一分鐘,沒有更改js檔案,ie再此開啟這個網頁,檢查到上次訪問時間、上次檢查時間,這兩個屬性的值是一致的,為開啟時的時間,但是上次修改時間顯示為1分鐘前。

實驗結果大致認為:ie開啟網頁時,會檢查js檔案是否更新,更新的情況下下載新的檔案到緩衝,如果檔案保持不變的話,不重新下載。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.