我運行一個基於PHP的着陸頁,帶有一個大的頁眉圖形和一個帶有共享JavaScript共享按鈕的div,如下面的Twitter,Stumpleupon和Facebook。這些按鈕正在減慢加載過程,以便在下面進行翻轉。PHP - 優化加載過程
所以我很喜歡網站的重要部分首先顯示,最不重要的部分應該在最後加載。
如何存檔? 謝謝 邁克爾
我運行一個基於PHP的着陸頁,帶有一個大的頁眉圖形和一個帶有共享JavaScript共享按鈕的div,如下面的Twitter,Stumpleupon和Facebook。這些按鈕正在減慢加載過程,以便在下面進行翻轉。PHP - 優化加載過程
所以我很喜歡網站的重要部分首先顯示,最不重要的部分應該在最後加載。
如何存檔? 謝謝 邁克爾
最簡單的方法是將所有的JavaScript代碼移動到文檔的底部。它可能需要一些修改(即使用DOM功能而不是document.write
)或重新設置,但會使這些網站在這些小工具完全加載之前可用。設置async
and defer
是一個優雅而又複雜的選擇。
將多個JavaScript文檔連接在一起也會有所幫助,特別是對於較少的併發連接的瀏覽器。您還可以將圖形(主要是圖標/徽標等)與CSS sprites結合使用。在最前沿,data:
URLs允許將圖像嵌入到HTML文檔的源代碼中。在Yahoo Best Practices中閱讀有關這些技術的更多信息。
通過gzipping HTML和CSS文檔可以獲得更高的加速比。 JavaScript文件也可以壓縮,但縮小(例如YUI compressor)往往可以獲得更大的收益。您還應該爲靜態資源指定緩存指令。
在服務器端,你真的應該使用一個php字節碼的cacher,如APC。 Google有一些additional tips關於php的最佳實踐。
通用資源:
大的問題,其中一個更好的作家比我寫的山脈。實際上,這篇文章是由Yahoo!工作人員一杆 - 這是關於這個主題的權威文件,並很容易遵循:
http://developer.yahoo.com/performance/rules.html
另一個答案建議你的Javascript移動到頁面的底部。這可能會有所幫助,但不會解決所有問題,並且不會幫助您加載圖像。從雅虎的指南中,您可以很好地交換包含在CSS spritesheet中的單張圖像的許多較小圖像,以減少HTTP請求開銷,並確保爲所有內容啓用緩存。
你也可以(高級!)做聰明,棘手的東西,比如只把重要的東西放在文檔中,讓javascript(位於頁面的底部)動態加載使用AJAX的「額外」初始加載完成。漂亮!
像其他人一樣說你需要把javascript at the bottom。也許headjs庫使這個任務對你來說更容易一些?
特別是StumbleUpon按鈕很慢並阻止加載過程。代碼如下所示:''我不是那麼喜歡JavaScript,但我猜如果你想在頂部使用它,你不能在底部加載它,對吧? – Michael
@Micheal沒錯。您只能在
能否請你提供一個鏈接到你的頁面,或者我們可能看到的代碼片段(比如head元素)? – 2011-06-26 13:34:44