我搜索了一段時間,每個人都說不同。所以我有關於緩存,JavaScript文件和樣式的這個問題。在每一頁,一個或多個頁面上加載Javascripts和樣式?
好吧,讓我們開始,在每個教程和每個網站,談論如何加載文件,正確的方式來加載我所有的jQuery插件(我有20個腳本的不同頁面,只有少數是在主頁面上使用)在我的頁眉或頁腳和每頁上。即使其中一個插件,我們稱之爲contact.jquery.js
也不會在每個頁面上執行(about.php
,index.php
),並且只在contact.php
中運行,並且用戶並不總是能夠訪問。
邏輯上說 - 如果您從第一頁(index.php
)一次加載所有腳本和樣式,第二頁上的腳本加載(contact.php
)將被緩存,並且將被快速加載。
但
當我從加載頭所有的腳本,我的第一個頁面是很慢,但是當我加載1個腳本從另一個網頁(沒有把腳本頭)它並不需要很多的時間加載,因爲它只是一個jQuery腳本。
所以這裏沒有任何邏輯,如果我在使用它的頁面上分離腳本,速度與用戶使用的頁面成比例。
那麼最好的方法是什麼?
- 要通過網頁訪問頻率單獨的腳本並把
- 分離頁面中的腳本仍然加載一切從索引頁。
- 將所有腳本分隔到不同的頁面並放到頁腳。
- 在第一頁的標題中使用所有腳本,但不要在使用特定腳本的頁面上重新加載某些腳本。
- 加載所有插件的頭,在所有頁面,在一個單一的JS文件
- 使用裝載機像headjs或yepnope
PS:對於風格的一樣 - contact.css將被載入從第一頁或更好的contact.php。我認爲從索引來看css更好,但是對於腳本我感到困惑。
也許[yepnope(http://yepnopejs.com/)有條件裝載機的變化爲js和css文件 – gwillie