作者red0whale (red whale)
看板Web_Design
標題[問題] 外部JS程式及CSS匯入至網頁頁面問題…
時間Wed Aug 23 11:56:26 2017
通常我們為了讓相同的JS程式碼或CSS在多個頁面中不再重複載入造成速度變慢
會將JS和CSS另外獨立成一個檔案並匯入至所有網頁頁面
以至瀏覽器讀到相同匯入檔就不必辛苦的再重新把JS程式碼和CSS全部重新讀過一遍
請問如果我第一頁載入的檔案是「a.js?id=1」,第二頁載入「a.js?id=2」
請問瀏覽器會不會認為這是兩個不同的檔案而在讀取第二頁時將「a.js?id=2」當成是一
個全新的檔案而全部再重新讀過一遍?
(「a.js?id=1」和「a.js?id=2」檔案內容大致相同,只是因為變數id有所不同而略有差
異)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.44.1.87
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Web_Design/M.1503460588.A.2DE.html
1F:→ Kenqr: 會08/23 11:58
2F:推 Ayukawayen: 會 我改過js檔後都用這招來叫瀏覽器重讀08/23 12:13
謝謝樓上兩位
但是我有個疑問想再請教一下
如果我的JS程式碼很龐大、複雜 (扣掉註解空白大約10,000行) 而且一體成型
但是這麼龐大的程式碼當中在不同頁面裡需要變動的值永遠是固定那幾個 (需要變動的值
指的是用後端去改變)
而想把其中大部分相同重複且沒有任何變動處的部分抽離成獨立檔案是挺困難的事
因為牽一髮而動全身
請問我是不是因此就只能讓瀏覽器在載入新頁面時全部重新讀取整個JS程式碼,縱使它就
只是那幾個地方在變而已?
※ 編輯: red0whale (114.44.1.87), 08/23/2017 12:42:15
4F:→ Kenqr: 變數用ajax讀進來 08/23 17:31
5F:推 Peruheru: 或是要不要考慮龐大的那個不做分別,而是後台產生JS檔給 08/23 17:48
6F:→ Peruheru: 前台讀然後更新變數內容,就像CSS覆蓋的感覺 08/23 17:49
7F:→ Peruheru: 也就是把變數單獨作為一個動態JS檔然後延後讀入 08/23 17:49
8F:→ jhnny97: 阿對了google的瘦身工具很好用 08/23 18:20
10F:推 hijkxyzuw: querystring 一樣的話還是可以 cache 的 08/23 22:01